JSON в TypeScript

Бесплатный конвертер JSON в TypeScript. Создавайте интерфейсы или типы из JSON с автоматически выводимыми вложенными объектами, массивами и объединениями, копируйте результат без регистрации.

Создан и поддерживается Shehzad Munir. ·

JSON в TypeScript
Loading Loading JSON to TypeScript
Share

Типизированные модели на основе реальных данных

Мгновенно преобразуйте любой JSON в интерфейсы или типы TypeScript с автоматическим выводом вложенных объектов, массивов, объединений и дополнительных свойств.

Написание интерфейсов TypeScript вручную для соответствия ответу API утомительно и подвержено ошибкам. Вставьте полезную нагрузку JSON, и этот инструмент обходит структуру, генерируя соответствующий интерфейс (или псевдоним типа) с правильно типизированными полями, вложенными интерфейсами для объектов и типами элементов массива. Смешанные массивы становятся типами объединения, поэтому ваши модели точно отражают данные.

Функции

  • Создавайте интерфейсы или вводите псевдонимы
  • Обрабатывает вложенные объекты и массивы
  • Выводит типы объединения из смешанных массивов
  • Дополнительные свойства для значений NULL
  • Имя пользовательского корневого типа
  • Запускается локально: код никогда не загружается

Как использовать JSON в TypeScript

  1. 1

    Вставить JSON

    Вставьте объект или массив данных.

  2. 2

    Установить параметры

    Выберите интерфейс или тип, назовите корень, отметьте значения NULL как необязательные.

  3. 3

    Обзор типов

    Вложенные интерфейсы генерируются автоматически.

  4. 4

    Копировать

    Скопируйте TypeScript в свой проект.

Распространенные случаи использования

  • Быстро введите ответ API
  • Генерация моделей из приспособления JSON
  • Создание интерфейсов для файла конфигурации
  • Типы начальной загрузки для новой интеграции

Подробное руководство

Настройте вывод в соответствии со своим стилем

Выберите, следует ли создавать интерфейсы или вводить псевдонимы, присвоить имя корневому типу и при необходимости пометить поля, допускающие значение NULL, как необязательные. Сгенерированный код обновляется в реальном времени и готов к вставке в ваш проект. Все это работает в вашем браузере, поэтому частные полезные данные API и внутренние схемы никогда не покидают ваш компьютер.

Как выводятся типы

Конвертер считывает ваш JSON и сопоставляет каждое значение с типом TypeScript: строки, числа и логические значения становятся строковыми, числовыми и логическими значениями, вложенные объекты становятся собственными именованными интерфейсами, а массивы становятся типизированными массивами. Когда массив содержит разные типы значений, результатом является объединение, например (строка | число)[]. Значение null становится нулевым, поскольку образец не может показать, что содержит поле, когда оно установлено. Имена свойств, которые не являются допустимыми идентификаторами, например «имя», заключаются в кавычки, поэтому выходные данные всегда компилируются.

Получение точных типов из выборочных данных

Выведенные типы хороши настолько, насколько хорош образец. Если в некоторых ответах API отсутствует поле, отметьте его как необязательное с помощью ? после генерации, и если в рабочей среде поле может быть нулевым, расширите его до строки | нулевой. Используйте максимально полный ответ, какой только сможете найти, в идеале такой, в котором присутствуют все необязательные поля. Для API, которые вы не контролируете, соедините сгенерированные типы с проверкой во время выполнения, например Zod или io-ts, поскольку типы TypeScript исчезают во время выполнения и не могут обнаружить измененный API. Даты поступают в формате JSON в виде строк, поэтому преобразуйте их самостоятельно, если вам нужны объекты Date.

Часто задаваемые вопросы

Как преобразовать JSON в интерфейс TypeScript?

Вставьте свой JSON, и инструмент мгновенно сгенерирует соответствующий интерфейс, создавая вложенные интерфейсы для объектов и выявляя типы элементов массива. Скопируйте его прямо в свой код.

Обрабатывает ли он вложенные объекты и массивы?

Да. Вложенные объекты становятся собственными именованными интерфейсами, а массивы типизируются их элементами. Массивы смешанных типов создают объединение типа (строка | число)[].

Могу ли я получить псевдонимы типов вместо интерфейсов?

Да: включите опцию создания псевдонимов «типа» вместо объявлений «интерфейса» и переименуйте корневой тип в соответствии с вашим проектом.

Загружен ли где-нибудь мой JSON?

Нет. Анализ и генерация происходят полностью в вашем браузере, поэтому конфиденциальные полезные данные никогда не покидают ваше устройство.

Как создать интерфейсы TypeScript из JSON?

Вставьте свой JSON (например, ответ API), дайте корню имя, и инструмент выведет типы и создаст готовые к использованию интерфейсы, включая вложенные объекты и массивы. Он работает локально, поэтому реальные полезные данные остаются конфиденциальными.

Обрабатывает ли он вложенные объекты и дополнительные свойства?

Да. Вложенные структуры становятся собственными именованными интерфейсами, массивы получают типы элементов, и вы можете пометить поля как необязательные, чтобы типы соответствовали реальным, иногда отсутствующим данным.

Могу ли я вывести псевдоним типа вместо интерфейса?

Да. Выберите интерфейс или тип вывода в зависимости от стиля вашей кодовой базы; оба создают точный TypeScript из полученной формы JSON.

Из журнала

All articles →