0Pricing
Sveltejs Academy · Lezione

$effect.root per la pulizia manuale

Crei una radice di effetti per controllare quando gli effetti vengono avviati e arrestati.

$effect.root per la pulizia manuale è 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.

Effetti esterni ai componenti

$effect funziona solo all'interno dei cicli di vita dei componenti. Per gli effetti a livello di applicazione, utilizzi $effect.root.

Creare una root

$effect.root restituisce una funzione di teardown.

const teardown = $effect.root(() => {
  $effect(() => { /* ... */ });
});

Ciclo di vita manuale

Decida quando interrompere l'effetto root; chiami il teardown restituito per eseguire la pulizia.

Casi d'uso

Attività in background, sottoscrizioni globali, script che devono durare oltre un singolo componente.

Effetti annidati

All'interno di una root può dichiarare normali chiamate a $effect.

Sostituzione degli store

$effect.root combinato con $state può sostituire molti pattern basati sugli store a livello di modulo.

Composizione della pulizia

La restituzione di funzioni di pulizia dagli effetti interni funziona come previsto.

Configurazione dei test

È utile nei test per eseguire codice reattivo al di fuori di un componente.

Compatibilità con SSR

$effect.root rispetta SSR; gli effetti non vengono eseguiti sul server.

Confronto con onMount/onDestroy

$effect.root + teardown è l'equivalente moderno degli effetti tra componenti.

API avanzata

Solo per utenti esperti: la maggior parte del codice delle applicazioni utilizza $effect all'interno dei componenti.

Verifica rapida

Quando si ricorre a $effect.root?

Riepilogo

$effect.root esegue effetti al di fuori dell'ambito del componente. La funzione restituita li interrompe su richiesta.

Domande Frequenti

La lezione «$effect.root per la pulizia manuale» è gratuita?

Sì — il testo completo di «$effect.root per la pulizia manuale» è 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 «$effect.root per la pulizia manuale»?

Crei una radice di effetti per controllare quando gli effetti vengono avviati e arrestati. 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 «$effect.root per la pulizia manuale»?

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. $state.raw per lo stato non reattivo
  2. $derived.by per derivazioni complesse
  3. $effect.root per la pulizia manuale
  4. Migrazione da Svelte 4 a 5
← Torna a Sveltejs Academy