Performance: Auto-subscription with $ prefix
MEDIUM IMPACT
This affects how reactive updates trigger DOM changes and browser rendering performance.
import { writable } from 'svelte/store'; const count = writable(0); // In component template or script // Use $count directly to auto-subscribe and update UI reactively <p>{$count}</p>
import { writable } from 'svelte/store'; const count = writable(0); let currentCount; const unsubscribe = count.subscribe(value => { currentCount = value; // manually update UI or trigger re-render }); // Use currentCount in template // Remember to unsubscribe when no longer needed // unsubscribe();
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Manual subscription with subscribe() | Multiple DOM writes if not batched | Multiple reflows per update | Higher paint cost due to repeated updates | [X] Bad |
| Auto-subscription with $ prefix | Single DOM write per reactive change | Single reflow per update | Lower paint cost due to efficient batching | [OK] Good |