Performance: Component events (createEventDispatcher)
MEDIUM IMPACT
This affects interaction responsiveness and event propagation efficiency between components.
import { createEventDispatcher } from 'svelte'; // Child.svelte <script> const dispatch = createEventDispatcher(); function handleClick() { dispatch('click'); } </script> <button on:click={handleClick}>Click me</button>
import { writable } from 'svelte/store'; // Child.svelte <script> import { sharedStore } from './store.js'; function handleClick() { sharedStore.set('clicked'); } </script> <button on:click={handleClick}>Click me</button>
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Using createEventDispatcher for child-to-parent events | Minimal, only event dispatch | 0 unless handler changes layout | 0 unless handler changes styles | [OK] Good |
| Using global store for simple events | Multiple components update | Multiple reflows if layout changes | Multiple paints if styles change | [X] Bad |