Gestión de errores de validación en actions
Devuelva errores de validación y vuelva a rellenar los campos del formulario mediante fail() y ActionData
Gestión de errores de validación en actions es una lección gratuita de Sveltejs Academy en CoddyKit. Esta es la lección 4 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.
El helper fail
Utilice fail() para devolver errores de validación con un estado distinto de 2xx sin lanzar una excepción.
import { fail } from "@sveltejs/kit";
if (!email) return fail(400, { email, missing: true });Código de estado
El primer argumento es el estado HTTP (normalmente 400 para la validación).
Carga útil del error
El segundo argumento son los datos que se envían de vuelta a la página. Incluya los datos introducidos por el usuario para volver a rellenar el formulario.
Leer en la página
La página recibe una propiedad form con el resultado de la acción.
<script>
export let form;
</script>
{#if form?.missing}<p>Please enter an email.</p>{/if}Volver a rellenar los campos
Devuelva el valor enviado mediante fail y úselo para rellenar previamente los campos y evitar que el usuario tenga que escribirlo de nuevo.
<input name="email" value={form?.email ?? ""} />Errores por campo
Utilice claves de error individuales para cada campo y obtener una interfaz más detallada.
return fail(400, { errors: { email: "Invalid" } });Combinar con la validación mediante esquemas
Utilice bibliotecas como Zod o Valibot en el servidor para analizar los datos con seguridad de tipos.
Evitar lanzar errores para validar
Lanzar un error lleva a una página de error; fail mantiene al usuario en el formulario.
Restablecer el formulario tras el éxito
Cuando la operación se complete correctamente, borre el estado del formulario devolviendo valores vacíos o redirigiendo.
Usar con use:enhance
La propiedad form se actualiza sin recargar la página gracias a enhance.
Accesibilidad
Anuncie los errores con aria-live para que los lectores de pantalla los lean.
Comprobación rápida
¿Qué devuelve fail()?
Resumen
Utilice fail() para los errores de validación. La página los lee desde la propiedad form para ofrecer información clara al usuario.
Preguntas frecuentes
¿La lección «Gestión de errores de validación en actions» es gratis?
Sí — el texto completo de «Gestión de errores de validación en actions» 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 «Gestión de errores de validación en actions»?
Devuelva errores de validación y vuelva a rellenar los campos del formulario mediante fail() y ActionData 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 4 de 4.
¿Cuánto tiempo toma la lección «Gestión de errores de validación en actions»?
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
- +page.server.js con actions
- La directiva use:enhance
- Mejora progresiva de formularios
- Gestión de errores de validación en actions