Die destroy()-Aufräumfunktion
Geben Sie aus einer Action eine destroy-Funktion zurück, um Event-Listener und Observer zu bereinigen.
Die destroy()-Aufräumfunktion ist eine kostenlose Sveltejs Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Sveltejs Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Sveltejs Academy-Kurs umfasst insgesamt 4 Lektionen.
Warum Cleanup
Actions fügen häufig Listener oder Observer hinzu. Cleanup verhindert Speicherlecks, wenn das Element unmountet wird.
destroy zurückgeben
Eine Action kann ein Objekt mit einer destroy()-Funktion zurückgeben. Svelte ruft sie beim Unmounten auf.
function listen(node) {
function onClick() { /* ... */ }
node.addEventListener("click", onClick);
return { destroy() { node.removeEventListener("click", onClick); } };
}Mit Ressourcen koppeln
Alles, was Sie zuweisen (Listener, Observer, Intervalle), sollte in destroy freigegeben werden.
Idempotentes destroy
destroy wird einmal aufgerufen. Schreiben Sie die Funktion trotzdem defensiv für den Fall wiederholter Unmounts.
update und destroy kombinieren
Geben Sie beide zurück, um den vollständigen Lebenszyklus abzudecken: Reagieren Sie auf Parameteränderungen und räumen Sie beim Unmounten auf.
Observer
Pausieren und trennen Sie IntersectionObservers, ResizeObservers und MutationObservers in destroy.
Animations-Frames
Brechen Sie alle ausstehenden requestAnimationFrame-Schleifen ab, um unnötige Arbeit zu vermeiden.
Asynchrones Cleanup
destroy kann synchron sein. Wenn Sie asynchrones Cleanup benötigen, starten Sie Fire-and-forget-Cleanup-Aufgaben.
Speicherprofiling
Verwenden Sie die Speicherwerkzeuge des Browsers, um zu bestätigen, dass Actions ihre Referenzen nach dem Unmounten freigeben.
TypeScript-Typen
Der Rückgabetyp aus svelte/action ist ActionReturn<Params>.
Häufiger Fehler
Wenn Sie vergessen, destroy zurückzugeben, bleiben Listener aktiv, nachdem das Element entfernt wurde. Koppeln Sie add immer mit remove.
Kurzer Test
Wann wird destroy ausgeführt?
Zusammenfassung
Geben Sie { destroy } aus Ihrer Action zurück, um Listener und Observer beim Unmounten zu bereinigen.
Häufig gestellte Fragen
Ist die Lektion „Die destroy()-Aufräumfunktion“ kostenlos?
Ja — der vollständige Text von „Die destroy()-Aufräumfunktion“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Sveltejs Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Sveltejs Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Die destroy()-Aufräumfunktion“?
Geben Sie aus einer Action eine destroy-Funktion zurück, um Event-Listener und Observer zu bereinigen. Du übst Sveltejs Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Sveltejs Academy zu starten?
Keine Vorkenntnisse erforderlich. Sveltejs Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.
Wie lange dauert die Lektion „Die destroy()-Aufräumfunktion“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Sveltejs Academy-Lektion Code schreiben und ausführen?
Ja. Jede Sveltejs Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Syntax der use:-Direktive
- Action-Parameter und Aktualisierungen
- Die destroy()-Aufräumfunktion
- Praxisnahe Actions: clickOutside tooltip autofocus