javascript / intermediate
Snippet
Manuelle Store-Abonnements und Bereinigung
Während die $-Syntax für das automatische Abonnement üblich ist, ist das Verständnis manueller Abonnements entscheidend für komplexe Logik, bei der Sie auf Store-Änderungen innerhalb von Funktionen oder außerhalb des Markups reagieren müssen.
snippet.js
1
2
3
4
5
6
7
8
9
import { count } from './stores.js';import { onDestroy } from 'svelte';let localCount;const unsubscribe = count.subscribe(value => {localCount = value;});onDestroy(unsubscribe);
svelte
Erklärung
1
count.subscribe(value => {...})
Hört manuell auf Änderungen im Store und gibt eine Unsubscribe-Funktion zurück.
2
localCount = value
Aktualisiert eine lokale Komponentenvariable, wann immer sich der Store-Wert ändert.
3
onDestroy(unsubscribe)
Ruft die zurückgegebene Funktion auf, um Speicherlecks zu verhindern, wenn die Komponente entfernt wird.