Generuj interfejsy lub typy TypeScript z przykładowego JSON
Działa w przeglądarce. Wpisane dane nie są nigdzie wysyłane.Ręczne pisanie interfejsu na podstawie odpowiedzi JSON jest żmudne i łatwo o błąd. Wystarczy wkleić 1 przykład, aby otrzymać interfejsy lub typy TypeScript, razem z zagnieżdżonymi obiektami i tablicami. Przykład zostaje w przeglądarce, więc odpowiedź pełna prawdziwych danych nigdzie nie trafia.
Ta strona została przetłumaczona maszynowo z angielskiego oryginału. Tłumaczenie nie zostało jeszcze sprawdzone przez człowieka, dlatego wiążąca jest wersja angielska. Przeczytaj angielski oryginał
Wklej przykładową odpowiedź JSON do panelu JSON albo kliknij Wypróbuj przykład.
Ustaw Nazwę główną i wybierz Interface lub Type.
Wybierz sposób typowania wartości null, „| null” lub Opcjonalne, oraz włącz lub wyłącz Export i Readonly.
Kliknij Kopiuj albo ikonę pobierania, aby zapisać plik .ts nazwany od typu głównego.
Konwerter JSON na TypeScript odczytuje próbkę danych i zapisuje odpowiadające jej interfejsy lub aliasy typów. Każdy zagnieżdżony obiekt dostaje własną nazwaną deklarację, tablice dostają typy elementów, a wynik aktualizuje się podczas pisania, więc po wklejeniu odpowiedzi działające typy można skopiować sekundę później.
Programiści używają go przy podłączaniu nowego API: wklejają jedną odpowiedź z karty sieci i dostają typy dla wywołania fetch. Pomaga też, gdy plik konfiguracyjny lub ładunek webhooka urósł za bardzo, by typować go ręcznie, albo gdy przejmuje się nietypowane fixtures JSON i kompilator ma zacząć wyłapywać błędy.
Generator analizuje każdy element tablicy, a nie tylko pierwszy. Obiekty w tablicy są scalane w jeden interfejs, a klucz, którego brakuje w części z nich, staje się opcjonalny. Pole przechowujące różne rodzaje wartości staje się unią, na przykład string | number. Wartości null dodają | null albo czynią właściwość opcjonalną, do wyboru. Identyczne kształty dzielą jedną deklarację, a klucze takie jak pin-code są ujmowane w cudzysłów.
Wszystko działa w przeglądarce i nic z wklejonej treści nie jest nigdzie wysyłane. Typy opisują tylko podaną próbkę, więc warto uwzględnić przykład każdego oczekiwanego wariantu. Ctrl+Enter kopiuje wynik. Powiązane narzędzia: JSON Formatter, YAML to JSON, CSV to JSON.
Wklej JSON do lewego panelu. Interfejsy pojawiają się po prawej podczas pisania. Ustaw nazwę główną, wybierz interface lub type, a następnie kliknij Kopiuj lub naciśnij Ctrl+Enter i wklej wynik do pliku .ts.
Wszystko tutaj jest darmowe, bez rejestracji i bez limitu konwersji. Konwersja działa w całości w przeglądarce, więc wklejony JSON nigdy nie opuszcza urządzenia, a żadna kopia nie trafia na serwer. Odpowiedzi API z tokenami dostępu, adresami e-mail czy szczegółami zamówień można bezpiecznie wklejać.
Gdy tablica zawiera kilka obiektów, są one scalane w jeden interfejs. Klucz występujący tylko w części z nich jest oznaczany jako opcjonalny znakiem zapytania. Przy opcji null ustawionej na Opcjonalne klucz o wartości null również jest oznaczany jako opcjonalny.
Oba opisują ten sam kształt. Interfejsy można rozszerzać i scalać, a wiele zespołów woli je dla obiektów. Aliasy typów mogą też wyrażać unie i typy mapowane. Warto wybrać to, czego już używa kod; narzędzie zapisze jedno i drugie.
Typ elementu staje się unią, na przykład (string | number)[]. Pusta tablica staje się unknown[], bo nie ma z czego wnioskować; wystarczy dodać jeden przykładowy element, aby uzyskać dokładny typ.
Tak. Pliki o rozmiarze kilku megabajtów konwertują się w znacznie mniej niż sekundę. Głębokie zagnieżdżenie nie stanowi problemu; każdy poziom dostaje własną nazwaną deklarację, a identyczne kształty są używane ponownie zamiast powtarzane.
Nadal coś nie działa? Zapytaj o narzędzie JSON na TypeScript a odpowiedzieć może każdy, kto zna odpowiedź. Konto nie jest potrzebne.