JSON в TypeScript
Автоматическая конвертация JSON-данных в TypeScript-интерфейсы или определения типов
// После ввода JSON автоматически сгенерируются определения типов TypeScriptЧто такое конвертация JSON в TypeScript?
Конвертация JSON в TypeScript — это автоматическое преобразование JSON-данных в определения типов TypeScript. Инструмент анализирует структуру JSON и генерирует соответствующие объявления interface или type, помогая разработчикам получить типобезопасность и подсказки кода в TypeScript-проектах.
Использование
- Вставьте JSON-данные в левое поле ввода или нажмите кнопку примера для загрузки
- Настройте опции: задайте имя корневого типа, выберите стиль interface/type, добавьте export и т.д.
- Справа автоматически сгенерируются соответствующие определения типов TypeScript
- Нажмите «Копировать» для копирования определения типов в буфер обмена
- Вставьте определение типов в TypeScript-проект
Примеры использования
Конвертация простого объекта
输入 JSON:
{
"name": "张三",
"age": 28,
"isActive": true
}
输出 TypeScript:
export interface Root {
name: string;
age: number;
isActive: boolean;
}Конвертация вложенного объекта
输入 JSON:
{
"user": {
"id": 1,
"profile": {
"avatar": "url",
"bio": "简介"
}
}
}
输出 TypeScript:
export interface UserProfile {
avatar: string;
bio: string;
}
export interface User {
id: number;
profile: UserProfile;
}
export interface Root {
user: User;
}Часто задаваемые вопросы
В: Как использовать сгенерированные типы?
О: Скопируйте сгенерированное определение типов в файл .ts, затем используйте в коде. Например: const data: Root = JSON.parse(response)
В: В чём разница между interface и type?
О: interface может быть расширен и реализован, подходит для определения объектных типов; type более гибкий, может определять объединения, пересечения и т.д. Для простых структур объектов функции аналогичны.
В: Как обрабатываются типы массивов в JSON?
О: Инструмент автоматически определяет тип элементов массива. Если это массив объектов, для элементов массива генерируется отдельное определение типа, затем используется ItemType[].
В: Можно ли редактировать сгенерированные типы?
О: После генерации можно свободно редактировать. Рекомендуется настроить имена типов, добавить метки опциональных полей (?) или изменить определения типов некоторых полей по необходимости.