Command Palette

Search for a command to run...

JS

JSON vers TypeScript

Générez des interfaces TypeScript à partir de n'importe quel exemple JSON. Déduit les types imbriqués, fusionne les tableaux d'objets dans une seule interface, marque les clés nullables et manquantes en option et émet un code exportable propre. 100% côté client.

Style:
Indent:
Category:data
Mode:Offline
Version:1.0.0
Access:Free

Qu'est-ce que le convertisseur JSON en Typescript ?

JSON to TypeScript interface on Toolz.dev - Generate TypeScript interfaces from any JSON sample. Infers nested types, merges arrays of objects into a single interface, marks nullable and missing keys optional, and emits clean exportable code. 100% client-side.

Le convertisseur JSON vers TypeScript lit un exemple de valeur JSON - une réponse API, un fichier de configuration, un enregistrement de base de données - et écrit les interfaces TypeScript qui le décrivent Les objets imbriqués deviennent leurs propres interfaces nommées, les tableaux d'objets sont fusionnés en une interface à élément unique plutôt qu'en une union tentaculaire, et les clés nulles ou manquantes dans certains enregistrements sont marquées comme facultatives Vous collez des données que vous possédez déjà ; vous obtenez des types que vous écririez autrement à la main.

La saisie manuelle d'une réponse API est fastidieuse et sujette aux erreurs d'une manière spécifique : vous tapez ce que vous * pensez * que le point de terminaison renvoie, pas ce qu'il a réellement renvoyé. Les champs que vous n'avez jamais remarqués sont omis, un entier parfois nul est saisi en tant que "numéro" et l'erreur fait surface lors de l'exécution dans la production plutôt que dans votre éditeur. Générer des types directement à partir d'une charge utile réelle comble cet écart, car la forme sur laquelle vous compilez est la forme que le serveur a réellement envoyée.

Tout tourne dans votre navigateur Le moteur d'inférence est TypeScript sans dépendance, pas un wrapper autour d'un service distant, donc les charges utiles - qui transportent régulièrement les jetons d'accès, les dossiers clients et les ID internes - ne quittent jamais la page Choisissez des interfaces ou tapez des alias, basculez le mot-clé `export` et les modificateurs `readonly`, choisissez votre largeur d'indentation, puis copiez la sortie ou téléchargez un fichier.ts.

Les interfaces générées décrivent l'échantillon que vous avez fourni, pas l'API que vous appelez, et cette distinction est tout le risque Un champ qui se trouve être présent dans chaque objet de votre échantillon est marqué requis même si le serveur l'omet parfois, et un champ qui est nul dans l'échantillon ne peut pas être distingué d'un qui est toujours nul Les tableaux vides sont le cas le plus clair : un tableau sans éléments ne donne aucune information sur ce qu'il contient La fusion de tableaux aide ici en combinant chaque objet d'une liste dans une interface et en marquant les clés qui manquent dans certaines entrées comme facultatives, donc un échantillon plus grand et plus varié produit un type plus honnête Où l'API a un schéma ou un document OpenAPI, générer à partir de cela et utiliser cette réponse non document à la place.

Comment utiliser le convertisseur JSON en Typescript ?

1

Collez votre JSON

Déposez une réponse d'API, un fichier de luminaires ou toute valeur JSON. Chargez l'exemple en premier si vous souhaitez voir comment les objets imbriqués, les tableaux et les champs NULL sont gérés.

2

Nommez le type de racine

Définissez le nom du type racine - généralement la ressource, comme l'utilisateur ou la facture. Les interfaces imbriquées sont nommées automatiquement à partir de leur clé, avec les noms des éléments du tableau singularisés (les versions deviennent Release).

3

Choisissez votre style de sortie

Choisissez Interface ou Type d'alias, décidez d'exporter chaque déclaration, ajoutez des modificateurs en lecture seule si votre base de code préfère les formes immuables et définissez l'indentation sur 2 ou 4 espaces.

4

Générer, puis copier ou télécharger

Appuyez sur Générer. Vérifiez les options et les syndicats inférés, puis copiez le code dans votre presse-papiers ou téléchargez-le sous la forme d'un fichier .ts prêt à être déposé dans votre dossier Types.

Principales caractéristiques

Extraction d'interface imbriquée

Chaque objet imbriqué devient sa propre interface réutilisable nommée au lieu d'une forme anonyme en ligne, vous pouvez donc importer et référencer les types internes de manière indépendante.

Fusion de réseau intelligent

Un tableau d'objets est fusionné dans une interface d'élément. Les clés présentes dans certains enregistrements, mais pas d'autres, ne deviennent facultatives, ce qui est exactement le comportement des données d'API paginées réelles.

Nullable Manipulation que vous contrôlez

Choisissez si une valeur nulle signifie que la clé est facultative ou si NULL appartient à l'union. Les deux conventions sont courantes ; l'outil n'en force pas une sur votre base de code.

Interfaces ou alias de type

Émettez `Interface User {}` ou `type user = {}` pour correspondre à vos règles LINT existantes, avec des modificateurs facultatifs `export` et `readonly` appliqués de manière cohérente dans chaque déclaration.

Frequently Asked Questions

Collez votre JSON dans l'éditeur, définissez le nom du type racine et appuyez sur Générer L'outil infère le type de chaque clé, extrait les objets imbriqués dans leurs propres interfaces et génère le code que vous pouvez copier directement dans un fichier.ts. Aucune inscription et aucun téléchargement - l'inférence s'exécute dans votre navigateur.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!

json to typescriptjson to typescript interfaceconvert json to typescriptjson to interface generatortypescript type generatorjson to typegenerate typescript from jsonapi response typestypescript interface from apijson schema to typescript