0Pricing
Sveltejs Academy · Lección

$effect.root para la limpieza manual

Cree una raíz de efecto para controlar cuándo se inician y se detienen los efectos.

$effect.root para la limpieza manual es una lección gratuita de Sveltejs Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Sveltejs Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Sveltejs Academy incluye 4 lecciones en total.

Efectos fuera de los componentes

$effect solo funciona dentro de los ciclos de vida de los componentes. Para efectos de toda la aplicación, utilice $effect.root.

Crear una raíz

$effect.root devuelve una función de desmontaje.

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

Ciclo de vida manual

Usted decide cuándo se detiene el efecto raíz; llame al desmontaje devuelto para realizar la limpieza.

Casos de uso

Tareas en segundo plano, suscripciones globales y scripts que abarcan más de un solo componente.

Efectos anidados

Dentro de una raíz, puede declarar llamadas normales a $effect.

Reemplazo de stores

$effect.root combinado con $state puede reemplazar muchos patrones de store a nivel de módulo.

Composición de la limpieza

Devolver funciones de limpieza desde efectos internos funciona como se espera.

Configuración de pruebas

Es útil en pruebas para ejecutar código reactivo fuera de un componente.

Compatibilidad con SSR

$effect.root respeta SSR; los efectos no se ejecutan en el servidor.

Comparación con onMount/onDestroy

$effect.root + desmontaje es el equivalente moderno para efectos entre componentes.

API avanzada

Solo para usuarios avanzados; la mayor parte del código de una aplicación utiliza $effect dentro de los componentes.

Comprobación rápida

¿Cuándo se utiliza $effect.root?

Resumen

$effect.root ejecuta efectos fuera del ámbito de los componentes. La función devuelta los desmonta cuando se le solicita.

Preguntas frecuentes

¿La lección «$effect.root para la limpieza manual» es gratis?

Sí — el texto completo de «$effect.root para la limpieza manual» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Sveltejs Academy, actualiza a CoddyKit PRO. El curso de Sveltejs Academy incluye 4 lecciones en total.

¿Qué aprenderé en «$effect.root para la limpieza manual»?

Cree una raíz de efecto para controlar cuándo se inician y se detienen los efectos. Practicas Sveltejs Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Sveltejs Academy?

No se requiere experiencia previa. Sveltejs Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «$effect.root para la limpieza manual»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Sveltejs Academy?

Sí. Cada lección de Sveltejs Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. $state.raw para estado no reactivo
  2. $derived.by para derivaciones complejas
  3. $effect.root para la limpieza manual
  4. Migrar de Svelte 4 a 5
← Volver a Sveltejs Academy