JSON 转 TS
根据 JSON 样本自动生成 TypeScript 接口定义,合并同构数组元素类型。
JSON 转 TS是做什么的
联调拿到接口返回的 JSON 样本,手写对应的 TypeScript 接口既费时又容易漏字段。粘贴样本后自动生成 interface 定义,嵌套对象与数组元素拆成独立类型,数组元素字段取并集,可选字段自动加问号。
核心功能
- 数组元素字段取并集合并为同一类型
- 勾选字段可选后所有属性带问号
- 非法字段名自动加引号保证合法
- 根接口名可自定义,默认 Root
JSON 转 TS怎么用
粘贴接口返回的 JSON 样本,生成对应的 interface。数组会取所有元素的并集,可选字段会标记为 ?。
- 粘贴接口返回的 JSON 样本到输入框
- 在右上角输入框改根接口名如 UserResponse
- 需要字段全部可空时勾选字段可选
- 点生成查看右侧结果,点复制拿进项目
适合这些场景
- 前端根据后端返回样本建类型文件
- 把爬虫输出样本转成 TS 类型便于处理
- 评审接口文档时快速核对字段结构
常见问题
生成的类型能直接用吗?
可以,字段名非法时会自动加引号,空数组会标注为 any 数组;建议把生成名按业务习惯改成语义化命名再提交。
数组元素字段不一致怎么处理?
取所有元素字段的并集合并成一个类型,例如有的元素缺 price 字段,合并后仍会包含 price,使用时注意判空。
基本类型怎么映射?
字符串映射 string、数字映射 number、布尔映射 boolean,单独出现的 null 标注为 null,无法识别的结构回退 any。
生成的类型会和实际返回不符吗?
工具只依据你贴的样本推断,样本里没出现的字段或类型波动无法体现,接口有多种返回形态时建议分别生成再合并。