Mám niekoľko políčok, ktoré po kliknutí bude spôsobiť veľa zmien v DOM, a to zamrzne až žiadosti o niekoľko sekúnd. Rád by som políčka aktualizovať prvý, a/alebo zobrazenie čaká indikátor. Vyskúšal som rôzne veci, ale z nejakého dôvodu nie je nič iné, na DOM, ktoré bude aktualizovať pred mrazom. Zmeny sú vyrobené na veľký stôl, buď odstránením alebo pridaním celé stĺpce, a pôsobí to, ako keby to má vyššiu prioritu viac ako čokoľvek iné, pretože akékoľvek iné pokusy o aktualizáciu DOM po kliknutí na políčko sa nemusíte prejsť do tabuľky dokončil re-rendering. FWIW môžem použiť konzoly.prihlásiť sa na zobrazenie správy pred tabuľka aktualizácie, a tiež po dokončení je z nejakého dôvodu.
0
import {tick} from "svelte";
let checked = false;
$: applyChanges(checked);
async function applyChanges() {
messageVisible = true
await tick()
requestAnimationFrame(() => {
requestAnimationFrame(() => {
// do the stuff that causes a lots of dom updates
})
})
}
Na await tick()
platí messageVisible
zmeny DOM.
Dvojité raf bude čakať na prehliadač čerpať aktualizované DOM.