swagger2ts
swagger2ts 是一个基于 openapi-tool 改造的工具,可以通过 swagger 文档自动生成前端 ts模型、request 文件。
如果你喜欢这个项目,请给我一个 star。你的鼓励就是我最大的动力!
特性
- 同时兼容 OAS2 和 OAS3
- 支持主流的HTTP客户端库(目前支持 axios 和 umi-request)
- 支持生成 ts 模型文件
- 支持生成 ts request文件
安装
npm install swagger2ts
栗子
使用方式
const Swagger2ts = require('@mx560/Swagger2ts');
const { resolve } = require('path');
const url = 'https://gw.alipayobjects.com/os/antfincdn/M%24jrzTTYJN/oneapi.json';
const outputDir = resolve(__dirname, 'typings');
const swagger2ts = new Swagger2ts({url});
swagger2ts.generateTs({outputDir});
API
new Swagger2ts(options: Options)
创建一个 Swagger2ts
的实例.
Options:
参数 | 说明 | 类型 | 默认值 | 是否必须 |
---|---|---|---|---|
url | swagger 文档的地址 | string | - | url 或者 data 选填 |
data | swagger 文档的 json 数据 | string | - | url 或者 data 选填 |
generateTs(options: GeneratorTsOptions): void
生成 ts 文件,文件名将会是 tag 的名称。
GeneratorTsOptions:
参数 | 说明 | 类型 | 默认值 | 是否必须 |
---|---|---|---|---|
outputDir | 输出目录 | string | - | true |
generateModel | 是否生成model文件 | boolean | true | false |
generateRequest | 是否生成request文件 | boolean | false | false |
generateSwaggerJson | 是否生成SwaggerJson文件 | boolean | false | false |
template | 想要生成的 HTTP 客户端模板 | string | 'umi-request' |
false |
importText | 导入依赖的语句 | string | 默认导入语句 |
false |
multipleFiles | 多文件模式 | boolean | true | false |