Browser und Performance · Middle · Frage 11 von 75
Ein Klick-Handler erledigt nach dem UI-Update schwere, nicht dringende Arbeit. Wie lässt man das Update früher erscheinen?
button.addEventListener("click", async () => {
showSpinner();
// ...heavy work here
});- 1Mit
await scheduler.yield()abgeben, dann die Arbeit erledigen - 2
showSpinner()ganz ans Ende des Handlers verschieben - 3Die schwere Arbeit im Handler in
try/finallyeinschließen
Antwort zeigen
Richtige Antwort: Mit await scheduler.yield() abgeben, dann die Arbeit erledigen
Erklärung
Abgeben lässt den Browser den Spinner zeichnen, bevor es weitergeht. Ohne das wartet der Frame auf den ganzen Handler.