$effect.root do ręcznego sprzątania
Utwórz korzeń efektów, aby kontrolować moment uruchamiania i zatrzymywania efektów.
$effect.root do ręcznego sprzątania to bezpłatna lekcja Sveltejs Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Sveltejs Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Sveltejs Academy zawiera 4 lekcji w sumie.
Efekty poza komponentami
$effect działa tylko w cyklach życia komponentów. W przypadku efektów obejmujących całą aplikację użyj $effect.root.
Tworzenie efektu root
$effect.root zwraca funkcję kończącą działanie.
const teardown = $effect.root(() => {
$effect(() => { /* ... */ });
});Ręczny cykl życia
Decydujesz, kiedy efekt root się zatrzyma; wywołaj zwróconą funkcję kończącą działanie, aby posprzątać.
Zastosowania
Zadania działające w tle, globalne subskrypcje, skrypty wykraczające poza pojedynczy komponent.
Zagnieżdżone efekty
Wewnątrz efektu root można deklarować zwykłe wywołania $effect.
Zastępowanie store'ów
$effect.root w połączeniu z $state może zastąpić wiele wzorców store'ów na poziomie modułu.
Kompozycja czyszczenia
Zwracanie funkcji czyszczących z wewnętrznych efektów działa zgodnie z oczekiwaniami.
Konfiguracja testów
Przydaje się w testach do uruchamiania reaktywnego kodu poza komponentem.
Uwzględnianie SSR
$effect.root respektuje SSR; efekty nie są uruchamiane na serwerze.
W porównaniu z onMount/onDestroy
$effect.root + teardown to nowoczesny odpowiednik efektów obejmujących wiele komponentów.
Zaawansowane API
Tylko dla zaawansowanych użytkowników — większość kodu aplikacji używa $effect wewnątrz komponentów.
Szybkie sprawdzenie
Kiedy należy użyć $effect.root?
Podsumowanie
$effect.root uruchamia efekty poza zakresem komponentu. Zwrócona funkcja kończy ich działanie na żądanie.
Często zadawane pytania
Czy lekcja „$effect.root do ręcznego sprzątania” jest bezpłatna?
Tak — pełny tekst „$effect.root do ręcznego sprzątania” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Sveltejs Academy, przejdź na CoddyKit PRO. Kurs Sveltejs Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „$effect.root do ręcznego sprzątania”?
Utwórz korzeń efektów, aby kontrolować moment uruchamiania i zatrzymywania efektów. Ćwiczysz Sveltejs Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Sveltejs Academy?
Nie wymagamy żadnego doświadczenia. Sveltejs Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.
Ile czasu zajmuje lekcja „$effect.root do ręcznego sprzątania”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Sveltejs Academy?
Tak. Każda lekcja Sveltejs Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- $state.raw dla niereaktywnego stanu
- $derived.by dla złożonych wyprowadzeń
- $effect.root do ręcznego sprzątania
- Migracja z Svelte 4 do 5