theme: github
fast-typescript-to-jsonschema
Typescript 生成 jsonschema 数据插件
性能
案例
interface AAA { a: number; b: string; c: boolean; }
复制
解析器 | 解析耗时 |
---|---|
fast-typescript-to-jsonschema | 15ms |
typescript-json-schema | 5430ms |
特性
- 编译Typescript文件以获取完整的类型信息
- 将所需的属性、继承、注释、属性初始值转换为jsonschema
使用
1.安装依赖
yarn add fast-typescript-to-jsonschema -D
复制
2.创建type.ts
文件,内容如下:
interface ITest { attr1: string; attr2: number; attr3?: boolean; }
复制
- 创建
test.js
文件,内容如下:
3.1 通过文件生成 jsonschema
const { default: genTypeSchema } = require('fast-typescript-to-jsonschema'); const path = require('path'); // 目标文件 const file = path.resolve(__dirname, './type.ts'); // 生成数据 genTypeSchema.genJsonDataFormFile(file); // 获得当前文件对应的所有jsonschema数据 const json = genTypeSchema.genJsonData(); // 获得具体的某个type的jsonschema数据 const jsonSchema
复制