Μετατροπέας JSON σε TypeScript
Μετατρέψτε αντικείμενα και πίνακες JSON σε τύπους ή interfaces TypeScript με αυτόματη δημιουργία εμφωλευμένων τύπων
Είσοδος
Έξοδος
Readme
Γιατί να μετατρέψετε JSON σε TypeScript;
Το TypeScript χρησιμοποιεί στατικούς τύπους για να εντοπίζει bugs κατά τη μεταγλώττιση αντί για την εκτέλεση. Όταν εργάζεστε με APIs, αρχεία ρυθμίσεων ή οποιαδήποτε εξωτερική πηγή δεδομένων που επιστρέφει JSON, συνήθως χρειάζεται να ορίσετε τύπους ή interfaces που περιγράφουν τη δομή αυτών των δεδομένων. Η χειροκίνητη σύνταξη αυτών των ορισμών είναι κουραστική και επιρρεπής σε λάθη, ιδιαίτερα για βαθιά εμφωλευμένα αντικείμενα ή μεγάλους πίνακες με ποικίλες δομές. Η αυτοματοποίηση της μετατροπής εξοικονομεί χρόνο και μειώνει τον κίνδυνο αναντιστοιχιών μεταξύ των τύπων σας και των πραγματικών δεδομένων.
Περιγραφή εργαλείου
Αυτό το εργαλείο δέχεται οποιοδήποτε έγκυρο JSON — αντικείμενα, πίνακες ή εμφωλευμένες δομές — και δημιουργεί αυτόματα αντίστοιχα type aliases ή interfaces TypeScript. Εντοπίζει αυτόματα εμφωλευμένα αντικείμενα, δημιουργεί ξεχωριστούς ονομαστούς τύπους για καθένα και διαχειρίζεται πίνακες συνάγοντας τους τύπους των στοιχείων τους. Μπορείτε να εναλλάσσεστε μεταξύ λειτουργίας εξόδου interface και type ανάλογα με τις συμβάσεις του έργου σας.
Παραδείγματα
JSON εισόδου:
{
"id": 1,
"name": "Alice",
"email": "alice@example.com",
"address": {
"street": "123 Main St",
"city": "Springfield",
"zip": "62701"
},
"roles": ["admin", "editor"]
}Έξοδος (λειτουργία Interface):
interface RootObject {
id: number;
name: string;
email: string;
address: Address;
roles: string[];
}
interface Address {
street: string;
city: string;
zip: string;
}Έξοδος (λειτουργία Type):
type RootObject = {
id: number;
name: string;
email: string;
address: Address;
roles: string[];
};
type Address = {
street: string;
city: string;
zip: string;
};Χαρακτηριστικά
- Επιλογή μεταξύ εξόδου
interfaceήtypealias μέσω ενός απλού dropdown - Αυτόματος εντοπισμός και εξαγωγή εμφωλευμένων τύπων αντικειμένων
- Συναγωγή τύπου στοιχείων πίνακα, συμπεριλαμβανομένων πινάκων αντικειμένων
- Συγχώνευση διαφορετικών σχημάτων αντικειμένων μέσα σε πίνακες σε έναν ενιαίο τύπο με προαιρετικές ιδιότητες
- Μετατροπή σε πραγματικό χρόνο με επεξεργαστές JSON και TypeScript με επισήμανση σύνταξης
Περιπτώσεις χρήσης
- Γρήγορος ορισμός τύπων TypeScript για payloads απόκρισης API κατά την ανάπτυξη frontend
- Δημιουργία ορισμών τύπων από αρχεία ρυθμίσεων JSON ή εξαγωγές βάσεων δεδομένων
- Εκκίνηση type-safe μοντέλων δεδομένων κατά την έναρξη νέου έργου TypeScript
Πώς λειτουργεί
Το εργαλείο αναλύει έγκυρο JSON και διατρέχει αναδρομικά τη δομή. Για κάθε αντικείμενο που συναντά, δημιουργεί ένα ονομαστό interface ή type alias με πεδία που αντιστοιχούν στα κλειδιά του αντικειμένου. Τα εμφωλευμένα αντικείμενα παράγουν επιπλέον τύπους που αναφέρονται με όνομα. Οι πίνακες αναλύονται για τον προσδιορισμό του τύπου στοιχείου — αν όλα τα στοιχεία είναι αντικείμενα, τα σχήματά τους συγχωνεύονται σε έναν ενιαίο τύπο όπου τα κλειδιά που δεν υπάρχουν σε κάθε στοιχείο γίνονται προαιρετικά.
Συμβουλές
- Επικολλήστε ένα αντιπροσωπευτικό δείγμα των δεδομένων JSON σας. Όσο πιο πλήρες είναι το δείγμα, τόσο πιο ακριβείς θα είναι οι παραγόμενοι τύποι.
- Για πίνακες με μικτά σχήματα αντικειμένων, συμπεριλάβετε πολλαπλά αντικείμενα ώστε το εργαλείο να μπορεί να εντοπίσει προαιρετικά πεδία.
- Χρησιμοποιήστε τη λειτουργία Type αν το έργο σας προτιμά type aliases για σχήματα αντικειμένων, ή τη λειτουργία Interface αν ακολουθείτε τη σύμβαση των interfaces.