Heim  >  Artikel  >  Web-Frontend  >  [Javascript] Vermeiden Sie das Phänomen, dass sich die ProgressBar nicht bewegt (sie bewegt sich erst, nachdem eine Reihe von Prozessen abgeschlossen ist).

[Javascript] Vermeiden Sie das Phänomen, dass sich die ProgressBar nicht bewegt (sie bewegt sich erst, nachdem eine Reihe von Prozessen abgeschlossen ist).

王林
王林Original
2024-08-16 11:27:35459Durchsuche

[Javascript] Avoid the phenomenon where the ProgressBar does not move (it only moves after a series of processes are completed)

Wenn Sie Javascript in HTML erstellen, dessen Verarbeitung lange dauert, haben Sie dann jemals eine ProgressBar implementiert und hatten Probleme damit, dass sich die ProgressBar erst bewegte, nachdem der gesamte Prozess abgeschlossen war?

In diesem Artikel möchte ich ein Beispiel für eine vorübergehende Lösung für diese Situation vorstellen.

Wenn Sie diese Schritte befolgen, funktioniert die Fortschrittsleiste während der Verarbeitung.


Schritt 1: Platzieren Sie den gesamten Prozess in einer asynchronen Methode

Platzieren Sie zunächst den gesamten Prozess in einer asynchronen Methode und führen Sie ihn aus.

async function MyFunction(ctx, canvas) {

}

MyFunction(ctx, canvas); // Be sure to run it in the original location.

Schritt 2: Schreiben Sie einen Schlaf, nachdem Sie den Wert des ProgressBar geändert haben

Als nächstes schreiben Sie Folgendes, nachdem Sie den Wert des ProgressBar geändert haben.

const sleep = ms => new Promise(resolve => setTimeout(resolve, ms))
await sleep(0);

Dies führt dazu, dass sich die Fortschrittsleiste während des Vorgangs ändert.


Wir haben ein Beispiel für eine vorübergehende Lösung vorgestellt, damit die ProgressBar normal funktioniert.

Ich hoffe, dieser Artikel wird Ihnen helfen, mindestens eines Ihrer Probleme zu lösen.

Vielen Dank fürs Lesen.

Das obige ist der detaillierte Inhalt von[Javascript] Vermeiden Sie das Phänomen, dass sich die ProgressBar nicht bewegt (sie bewegt sich erst, nachdem eine Reihe von Prozessen abgeschlossen ist).. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn