2.0.0 • Published 1 month ago

openapi-genuu v2.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 month ago

介绍

根据 OpenApi3 文档生成对应模型以及 request 请求代码。

  • 类型即文档
  • 生成可以实例化的 class,而非 interface,一行代码实例化解决无属性烦恼(new className())
  • 使用类和静态方法重新组织代码结构
  • 对 API FOX 进行了适配 (java 等可以不写 swagger 注解 直接写注释 使用 api fox 生成文档和 json 文件)

使用

yarn add  openapi-genuu -D

在项目根目录新建 openapi.config.ts

import { generateService } from 'openapi-genuu';

generateService({
  requestLibPath: "import request from '../../utils/request';",
  schemaPath: 'http://petstore.swagger.io/v2/swagger.json',
  serversPath: './src/.generated',
});

package.jsonscript 中添加 api: "gen:api": "ts-node openapi.config.ts",

生成 api

npm run gen:api

注意 如"type": "module"

则: "gen:api": "ts-node --esm openapi.config.ts"

参数

属性必填备注类型默认值
requestLibPath自定义请求方法路径string-
requestImportStatement自定义请求方法表达式string-
apiPrefixapi 的前缀string-
serversPath生成的文件夹的路径string-
schemaPathSwagger 2.0 或 OpenAPI 3.0 的地址string-
projectName项目名称string-
namespace命名空间名称stringModels
mockFoldermock 目录string-
enumStyle枚举样式string-literal | enumenum
nullable使用 null 代替可选booleanfalse
dataFieldsresponse 中数据字段string[]-

fork by https://github.com/chenshuai2144/openapi2typescript