Gestione degli errori di validazione nelle actions
Restituisca gli errori di validazione e ripopoli i campi del form utilizzando fail() e ActionData.
Gestione degli errori di validazione nelle actions è una lezione Sveltejs Academy gratuita su CoddyKit. Questa è la lezione 4 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.
L'helper fail
Utilizzi fail() per restituire errori di validazione con uno stato diverso da 2xx, senza generare eccezioni.
import { fail } from "@sveltejs/kit";
if (!email) return fail(400, { email, missing: true });Codice di stato
Il primo argomento è lo stato HTTP (di solito 400 per la validazione).
Payload di errore
Il secondo argomento contiene i dati inviati nuovamente alla pagina. Includa l'input dell'utente per ripopolarlo.
Lettura nella pagina
La pagina riceve una prop form con il risultato dell'azione.
<script>
export let form;
</script>
{#if form?.missing}<p>Please enter an email.</p>{/if}Ripopolamento dei campi
Restituisca il valore inviato tramite fail e precompili gli input, così l'utente non dovrà reinserirlo.
<input name="email" value={form?.email ?? ""} />Errori a livello di campo
Utilizzi chiavi di errore individuali per ogni campo, così da ottenere un'interfaccia più dettagliata.
return fail(400, { errors: { email: "Invalid" } });Combinazione con la validazione tramite schema
Utilizzi librerie come Zod o Valibot sul server per un parsing sicuro dal punto di vista dei tipi.
Eviti di generare eccezioni per la validazione
Generare un'eccezione porta alle pagine di errore; fail lascia l'utente nel modulo.
Reimpostazione del modulo dopo il successo
Dopo il successo, azzeri lo stato del modulo restituendo valori vuoti o effettuando un reindirizzamento.
Utilizzo con use:enhance
La prop del modulo si aggiorna senza ricaricamento grazie a enhance.
Accessibilità
Annunci gli errori con aria-live, così gli screen reader possono leggerli.
Verifica rapida
Che cosa restituisce fail()?
Riepilogo
Utilizzi fail() per gli errori di validazione. La pagina li legge dalla prop form per fornire un riscontro chiaro.
Domande Frequenti
La lezione «Gestione degli errori di validazione nelle actions» è gratuita?
Sì — il testo completo di «Gestione degli errori di validazione nelle actions» è 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 «Gestione degli errori di validazione nelle actions»?
Restituisca gli errori di validazione e ripopoli i campi del form utilizzando fail() e ActionData. 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 4 di 4.
Quanto tempo richiede la lezione «Gestione degli errori di validazione nelle actions»?
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
- +page.server.js con le actions
- La direttiva use:enhance
- Progressive enhancement dei form
- Gestione degli errori di validazione nelle actions