TypeScript-zu-Mock-JSON-Generator
Füge ein TypeScript-Interface ein und erzeuge direkt in deinem Browser realistisches Mock-JSON, das dazu passt. Dein Code bleibt auf deinem Gerät.
Dein TypeScript-Interface wird lokal in deinem Browser geparst und gemockt und niemals hochgeladen, und die erzeugten Daten sind zufällige Beispieldaten, keine echten Datensätze.
Hast du schon JSON? Wandle es mit JSON to TypeScript in TypeScript um.
Über TypeScript zu Mock-Daten
Dieses TypeScript-zu-Mock-Daten-Tool nimmt ein Interface oder einen Type-Alias, das du einfügst, und erzeugt realistisches Mock-JSON, das zu seiner Form passt. Es liest die Typstruktur und wählt für jede Eigenschaft einen Fake-Wert, gesteuert sowohl durch den Feldnamen als auch durch den deklarierten Typ: ein email-Feld wird zu einer plausiblen E-Mail, name wird zu einem vollständigen Namen, createdAt wird zu einem ISO-Datum, id wird zu einer UUID oder Zahl, und einfache Strings werden zu Wörtern. Verschachtelte Interfaces, Inline-Objekte, Arrays, String-Literal-Unions, optionale Member und Date werden alle verarbeitet, und du steuerst, wie viele Objekte erzeugt werden und ob optionale Felder erscheinen. Nutze es, um Tests zu befüllen, API-Antworten zu prototypen oder eine UI mit Beispieldaten zu füllen, statt Fixtures von Hand zu schreiben. Alles läuft in deinem Browser, sodass das eingefügte Interface lokal verarbeitet wird und dein Gerät nie verlässt.
Funktionen
- Liest jedes TypeScript-Interface oder jeden Type-Alias und leitet eine passende JSON-Form ab
- Wählt Fake-Werte nach Feldnamen – email, name, phone, url, uuid, date und mehr
- Greift auf den deklarierten Typ zurück, wenn kein Namenshinweis passt (string, number, boolean, null)
- Rekursiert in verschachtelte Interfaces, Inline-Objekttypen und referenzierte Typen
- Erweitert Array-Felder wie tags: string[] in mehrere erzeugte Elemente
- Wählt einen Zweig einer String-Literal-Union wie 'admin' | 'editor'
- Schalte optionale (prop?:) Felder ein oder aus und erzeuge 1 Objekt oder ein Array vieler
- Kopiere das JSON oder lade es mit einem Klick als .json-Datei herunter
So verwendest du TypeScript zu Mock-Daten
- Füge ein TypeScript-Interface oder einen Type-Alias in das Eingabefeld ein.
- Lege fest, wie viele Objekte erzeugt werden und ob optionale Felder enthalten sein sollen.
- Wenn du mehrere Interfaces eingefügt hast, wähle, welches als Wurzel dienen soll.
- Lies das erzeugte Mock-JSON rechts, kopiere es dann oder lade eine .json-Datei herunter.
Beispiel
Eingabe
interface User {
id: number;
fullName: string;
email: string;
role: 'admin' | 'editor' | 'viewer';
tags: string[];
}
Ausgabe
{
"id": 4821,
"fullName": "Ada Lovelace",
"email": "ada.lovelace@example.com",
"role": "editor",
"tags": [
"design",
"api"
]
}
Feldnamen steuern die Fake-Werte, während das Union-Feld sich zu einem seiner Member auflöst.
Häufige Fehler & Fehlerbehebung
- Die Ausgabe zeigt "No TypeScript interface or type alias found". — Füge eine echte Deklaration ein, etwa interface User { id: number } oder type User = { id: number }; ein nackter Wert oder Ausdruck hat keine Form zum Mocken.
- Ein referenzierter Typ kommt als einfaches Wort statt als verschachteltes Objekt heraus. — Füge das referenzierte Interface in dieselbe Eingabe ein. Nur im eingefügten Quellcode definierte Typen können erweitert werden; unbekannte oder importierte Typen greifen auf einen String zurück.
- Ein Enum oder ein komplexer Mapped Type wird nicht so erweitert, wie du erwartest. — Wandle Enums in eine String-Literal-Union um (z. B. 'a' | 'b'), damit ein Member gewählt werden kann; ungewöhnliche Konstrukte greifen auf einen plausiblen String zurück.
- Optionale Felder erscheinen immer wieder (oder nie). — Nutze den Optionals-Schalter. Ist er aus, wird jeder prop?:-Member weggelassen; ist er an, werden optionale Member stets eingeschlossen.
Häufig gestellte Fragen
- Wie werden TypeScript-Feldtypen in Fake-Werte umgewandelt?
- Jede Eigenschaft wird zuerst nach ihrem Namen abgeglichen – email, name, phone, url, uuid, createdAt und ähnliche Hinweise werden auf passende Fake-Daten abgebildet – und andernfalls nach ihrem deklarierten Typ, sodass string, number, boolean und null jeweils einen sinnvollen erzeugten Wert erhalten.
- Unterstützt es verschachtelte Interfaces, Arrays und Unions?
- Ja. Verschachtelte Interfaces und Inline-Objekttypen werden rekursiv erweitert, Array-Typen wie string[] werden zu mehreren erzeugten Elementen, und eine String-Literal-Union wie 'admin' | 'editor' löst sich zu einem ihrer Member auf.
- Kann ich ein Array vieler Objekte auf einmal erzeugen?
- Ja. Setze die Objektanzahl über 1, und das Tool gibt ein JSON-Array mit so vielen erzeugten Objekten zurück; eine Anzahl von 1 gibt ein einzelnes Objekt statt eines Arrays zurück.
- Wie werden optionale Eigenschaften behandelt?
- Member, die mit prop?: als optional markiert sind, werden über den Optionals-Schalter gesteuert. Schalte ihn an, um sie stets einzuschließen, oder aus, um jedes optionale Feld aus der Ausgabe wegzulassen.
- Was passiert mit einem Date-Feld oder einem ISO-Zeitstempel?
- Ein Date-Typ sowie Namenshinweise wie createdAt, updatedAt oder timestamp erzeugen einen ISO-8601-Datumsstring, sodass das Mock-JSON gültig und leicht zu parsen bleibt.
- Wird das TypeScript, das ich einfüge, irgendwohin gesendet?
- Nein. Das Interface wird geparst und das Mock-JSON vollständig in deinem Browser erzeugt, sodass der eingefügte Code lokal verarbeitet wird und dein Gerät nie verlässt.
Verwandte Tools
Alle ArrayKit-Tools