3.0.16 • Published 11 months ago

@braydenyang/openapi2ts v3.0.16

Weekly downloads
-
License
MIT
Repository
-
Last release
11 months ago

介绍

GitHub Repo stars npm (scoped) GitHub tag (latest SemVer pre-release)

根据 OpenApi3 文档生成 request 请求代码。

如果你使用 umi ,你可以使用@umijs/plugin-openapi 插件。

使用

npm i --save-dev @umijs/openapi

在项目根目录新建 openapi2ts.config.ts 或者 .openapi2tsrc.ts

配置文件还支持 openapi2ts.config.ts, .openapi2tsrc.json 等格式,参考 cosmiconfig

export default {
  schemaPath: 'http://petstore.swagger.io/v2/swagger.json',
  serversPath: './servers',
}

如果单个项目有多个生成需求,支持传入数组配置

export default [
  {
    schemaPath: 'http://app.swagger.io/v2/swagger.json',
    serversPath: './servers/app',
  },
  {
    schemaPath: 'http://auth.swagger.io/v2/swagger.json',
    serversPath: './servers/auth',
  }
]

package.jsonscript 中添加 api: "openapi2ts": "openapi2ts",

生成api

npm run openapi2ts

参数

属性必填备注类型默认值
requestLibPath自定义请求方法路径string-
requestOptionsType自定义请求方法 options 参数类型string{key: string: any}
requestImportStatement自定义请求方法表达式string-
apiPrefixapi 的前缀string-
serversPath生成的文件夹的路径string-
schemaPathSwagger 2.0 或 OpenAPI 3.0 的地址string-
projectName项目名称string-
authorization文档登录凭证string-
namespace命名空间名称stringAPI
mockFoldermock目录string-
enumStyle枚举样式string-literal | enumstring-literal
nullable使用null代替可选booleanfalse
dataFieldsresponse中数据字段string[]-
isCamelCase小驼峰命名文件和请求函数booleantrue
hook自定义 hookCustom Hook-

Custom Hook

属性类型说明
afterOpenApiDataInited(openAPIData: OpenAPIObject) => OpenAPIObject-
customFunctionName(data: APIDataType) => string自定义请求方法函数名称
customTypeName(data: APIDataType) => string自定义类型名称
customClassName(tagName: string) => string自定义类名
customType(schemaObject: SchemaObject | undefined,namespace: string,originGetType:(schemaObject: SchemaObject | undefined, namespace: string) => string,) => string自定义获取类型 返回非字符串将使用默认方法获取type
customFileNames(operationObject: OperationObject,apiPath: string,_apiMethod: string,) => string[]自定义生成文件名,可返回多个,表示生成多个文件. 返回为空,则使用默认的获取方法获取
3.0.16

11 months ago

3.0.15

11 months ago

3.0.14

11 months ago

3.0.13

11 months ago

3.0.12

11 months ago

3.0.11

11 months ago

3.0.10

11 months ago

3.0.9

12 months ago

3.0.8

12 months ago