0Pricing
Sveltejs Academy · Lezione

La funzione di pulizia destroy()

Restituisca una funzione destroy da un'action per rimuovere listener di eventi e observer.

La funzione di pulizia destroy() è una lezione Sveltejs Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Sveltejs Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Sveltejs Academy include 4 lezioni in totale.

Perché la pulizia

Le action aggiungono spesso listener o observer. La pulizia previene le perdite di memoria quando l'elemento viene smontato.

Restituire destroy

Un'action può restituire un oggetto con una funzione destroy(). Svelte la chiama quando l'elemento viene smontato.

function listen(node) {
  function onClick() { /* ... */ }
  node.addEventListener("click", onClick);
  return { destroy() { node.removeEventListener("click", onClick); } };
}

Associare le risorse

Qualsiasi risorsa allocata, come listener, observer o intervalli, deve essere rilasciata in destroy.

destroy idempotente

destroy viene chiamata una volta. Tuttavia, la scriva in modo difensivo nel caso di smontaggi ripetuti.

Combinare update e destroy

Li restituisca entrambi per gestire l'intero ciclo di vita: reagire ai cambiamenti dei parametri e pulire le risorse quando l'elemento viene smontato.

Observer

Sospenda e disconnetta IntersectionObserver, ResizeObserver e MutationObserver in destroy.

Frame di animazione

Annulli tutti i cicli di requestAnimationFrame in attesa per evitare elaborazioni inutili.

Pulizia asincrona

destroy può essere sincrona. Se ha bisogno di una pulizia asincrona, avvii attività di pulizia fire-and-forget.

Profilazione della memoria

Utilizzi gli strumenti del browser per la memoria per verificare che le action rilascino i riferimenti dopo lo smontaggio.

Tipi TypeScript

Il tipo restituito è ActionReturn<Params> da svelte/action.

Errore comune

Dimenticare di restituire destroy lascia i listener collegati anche dopo la rimozione dell'elemento. Associ sempre add a remove.

Verifica rapida

Quando viene eseguita destroy?

Riepilogo

Restituisca { destroy } dalla sua action per rimuovere listener e observer quando l'elemento viene smontato.

Domande Frequenti

La lezione «La funzione di pulizia destroy()» è gratuita?

Sì — il testo completo di «La funzione di pulizia destroy()» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Sveltejs Academy, passa a CoddyKit PRO. Il corso Sveltejs Academy include 4 lezioni in totale.

Cosa imparerò in «La funzione di pulizia destroy()»?

Restituisca una funzione destroy da un'action per rimuovere listener di eventi e observer. Eserciti Sveltejs Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Sveltejs Academy?

Non è richiesta alcuna esperienza precedente. Sveltejs Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.

Quanto tempo richiede la lezione «La funzione di pulizia destroy()»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Sveltejs Academy?

Sì. Ogni lezione Sveltejs Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Sintassi della direttiva use:
  2. Parametri e aggiornamenti delle actions
  3. La funzione di pulizia destroy()
  4. Actions pratiche: clickOutside tooltip autofocus
← Torna a Sveltejs Academy