Convertitore da JSON a TypeScript e Zod

Da JSON a TypeScript e Zod

Convertitore da JSON a interfacce TypeScript + schema Zod | We.Inc

Incolla JSON e ottieni insieme interfacce TypeScript e uno schema Zod. Gli array vengono uniti così i campi mancanti diventano opzionali. Niente lascia il tuo browser.

Incolla un qualsiasi esempio JSON e questo convertitore scrive interfacce TypeScript per i controlli in fase di compilazione e uno schema Zod per verificare i dati a runtime. Gli oggetti annidati ricevono tipi con un proprio nome, gli array di oggetti vengono uniti così i campi assenti in alcuni elementi diventano opzionali, e la conversione avviene in locale, quindi i payload privati restano sul tuo computer.

Come i valori JSON diventano tipi

I tipi sono buoni solo quanto l'esempio, quindi incolla una risposta che mostri ogni campo che ti aspetti, idealmente con diversi elementi negli array. Rinomina il tipo radice, scegli tra interface e type alias e copia uno dei due output.

Tipi o schema: quale ti serve?

Leggere cosa ha dedotto il convertitore

Domande frequenti

Devo usare un'interface o un type alias?

Qui entrambi descrivono le forme degli oggetti altrettanto bene. Le interface con lo stesso nome si uniscono, il che aiuta quando estendi i tipi di una libreria; i type alias non si uniscono ma possono dare un nome alle union. Scegli uno stile per il codebase e mantienilo.

Come ottengo il tipo TypeScript da uno schema Zod?

Usa type User = z.infer<typeof UserSchema>. L'output Zod generato include già questa riga sotto ogni schema, quindi non devi mantenere interfacce separate.

Perché un campo ha tipo null?

Nel tuo esempio lì c'era null, quindi non c'era altro da dedurre. Sostituiscilo con il tipo reale unito a null, per esempio string | null, oppure z.string().nullable() nello schema.

Il mio JSON viene inviato a un server?

No. Parsing e generazione girano in JavaScript in questa pagina. Puoi caricare la pagina, andare offline e funziona ancora.

Usare l'output

Validare una risposta con lo schema generato

safeParse restituisce un successo o un elenco di problemi invece di generare un errore, il che si adatta al codice di fetch che deve mostrare uno stato di errore.

La stessa forma come semplici interfacce

Comodo per tipizzare props o argomenti di funzione quando i dati sono già affidabili.

Incolla JSON, ottieni i tipi

Incolla una risposta di esempio. Il convertitore scrive affiancati interfacce TypeScript e uno schema Zod corrispondente, unendo ogni elemento di un array così i campi mancanti in alcuni elementi risultano opzionali.

Nome del tipo radice

Stile di dichiarazione

proprietà readonly

Rendi opzionali i campi null

Carica esempio

Questo non è JSON valido: {msg}

Schema Zod

Copia

Inizia gratis · Nessuna carta di credito richiesta

Correlati: Strumenti gratuiti

Prodotto

Per chi è

Funzionalità

Risorse

Azienda

Mappa del sito