JSON-zu-TypeScript-und-Zod-Konverter

JSON zu TypeScript und Zod

JSON zu TypeScript-Interface + Zod-Schema: Konverter | We.Inc

Füge JSON ein und erhalte TypeScript-Interfaces und ein Zod-Schema auf einmal. Arrays werden zusammengeführt, sodass fehlende Felder optional werden. Nichts verlässt deinen Browser.

Füge ein beliebiges JSON-Beispiel ein, und dieser Konverter schreibt TypeScript-Interfaces für Prüfungen zur Compile-Zeit und ein Zod-Schema für Prüfungen der Daten zur Laufzeit. Verschachtelte Objekte bekommen eigene benannte Typen, Arrays aus Objekten werden zusammengeführt, sodass Felder, die in manchen Einträgen fehlen, optional werden, und die Umwandlung läuft lokal, private Daten bleiben also auf deinem Rechner.

Wie JSON-Werte auf Typen abgebildet werden

Typen sind nur so gut wie das Beispiel. Füge also eine Antwort ein, die jedes erwartete Feld zeigt, am besten mit mehreren Array-Einträgen. Benenne den Root-Typ um, wechsle zwischen Interface und Type-Alias und kopiere eine der beiden Ausgaben.

Typen oder ein Schema: Was brauchst du?

Lesen, was der Konverter geraten hat

Häufige Fragen

Sollte ich ein Interface oder einen Type-Alias verwenden?

Beide beschreiben Objektformen hier gleich gut. Interfaces mit demselben Namen werden zusammengeführt, was beim Erweitern von Bibliothekstypen hilft, Type-Aliase lassen sich nicht zusammenführen, können aber Unions benennen. Wähle einen Stil für die Codebasis und bleib dabei.

Wie bekomme ich den TypeScript-Typ aus einem Zod-Schema?

Verwende type User = z.infer<typeof UserSchema>. Die generierte Zod-Ausgabe enthält diese Zeile bereits unter jedem Schema, du musst also keine separaten Interfaces pflegen.

Warum hat ein Feld den Typ null?

Dein Beispiel hatte dort null, es gab also nichts anderes abzuleiten. Ersetze es durch den echten Typ in Verbindung mit null, zum Beispiel string | null, oder z.string().nullable() im Schema.

Wird mein JSON an einen Server gesendet?

Nein. Parsen und Generieren laufen in JavaScript auf dieser Seite. Du kannst die Seite laden, offline gehen, und sie funktioniert weiterhin.

Die Ausgabe verwenden

Eine Antwort mit dem generierten Schema validieren

safeParse gibt Erfolg oder eine Liste von Problemen zurück, statt einen Fehler zu werfen, was zu fetch-Code passt, der einen Fehlerzustand anzeigen soll.

Dieselbe Form als einfache Interfaces

Praktisch zum Typisieren von Props oder Funktionsargumenten, wenn die Daten bereits vertrauenswürdig sind.

JSON einfügen, Typen erhalten

Füge eine Beispielantwort ein. Der Konverter schreibt TypeScript-Interfaces und ein passendes Zod-Schema nebeneinander und führt jeden Eintrag eines Arrays zusammen, sodass Felder, die in manchen Einträgen fehlen, als optional herauskommen.

Name des Root-Typs

Deklarationsstil

readonly-Eigenschaften

null-Felder optional machen

Beispiel laden

Das ist kein gültiges JSON: {msg}

Zod-Schema

Kopieren

Kostenlos starten · Keine Kreditkarte nötig

Verwandt: Kostenlose Tools

Produkt

Für wen

Funktionen

Ressourcen

Unternehmen

Sitemap