JSON в TypeScript
Создавайте интерфейсы TypeScript из документа JSON с вложенными объектами в качестве именованных подинтерфейсов.
JSON в TypeScript
Вставьте документ JSON — ответ API, файл конфигурации, строку базы данных — и получите готовые к использованию объявления TypeScript. Типы выводятся рекурсивно: примитивы сопоставляются со строками, числами и логическими значениями, массивы содержат тип своего элемента, а смешанные массивы становятся чистыми объединениями, такими как (число | строка)[]. Каждый вложенный объект становится именованным субинтерфейсом, производным от ключа его свойства в PascalCase, поэтому свойство «пользователь» создает пользовательский интерфейс, который можно импортировать и ссылаться где угодно.
Идентичные формы обнаруживаются и повторно используют один интерфейс вместо создания дубликатов; числовой суффикс появляется только в том случае, если два объекта имеют одно и то же ключевое имя, но различаются по структуре. Пустые массивы отображаются как неизвестные[], а пустые объекты — как Record<string,known> — честные заполнители, а не догадки. Имена свойств, которые не являются допустимыми идентификаторами, заключаются в кавычки автоматически, поэтому регистр кебаба и числовые ключи сохраняются без изменений.
Опции охватывают реальные соглашения проекта. Назовите корневой тип, выберите между интерфейсом и объявлением типа, экспортируйте все или ничего, отметьте все свойства как доступные только для чтения и решите, как обрабатывать нулевые значения — как явный нулевой тип или как необязательные свойства. Неверный JSON выдает спокойную ошибку со строкой и столбцом проблемы, точно так же, как об этом сообщает форматтер JSON.
Все работает локально в вашем браузере: ответы API с токенами, пользовательскими записями или внутренними полезными данными никогда не покидают ваш компьютер. Вставьте, скопируйте объявления в свою кодовую базу, и форма ваших данных будет введена.