1.1.3 • Published 2 months ago

@deepinnet/swagger2ts v1.1.3

Weekly downloads
-
License
ISC
Repository
-
Last release
2 months ago

@deepinnet/swagger2ts

swagger文档转ts工具

全局安装

npm i @deepinnet/swagger2ts -g

安装好后查看版本

swagger2ts -V

使用方式

在项目根目录创建 swagger2ts.config.js 配置文件

文件内容如下(配置项参考下文):

module.exports = {
  url: "http://192.168.3.200:10052/v2/api-docs",
  typesDir: "./src/types",
  servicesDir: "./src/service",
};

在项目根目录运行

swagger2ts

默认配置文件内容如下

// 默认配置
module.exports = {
  // url: 'http://192.168.3.200:10052/v2/api-docs', // swagger文档地址
  typesDir: "./src/types", // 类型定义输出目录 必填 必须以./src开头
  servicesDir: "./src/service", // services输出目录 必填 必须以./src开头
  ignoreKeys: ["Authorization", "Tenant-Id"], // 忽略掉的传参字段
  ignoreType: ["header"], // 忽略掉的传参位置
  ignoreUrl: [], // 忽略掉的接口url
  ignoreUrlPrefix: [], // 忽略掉的接口url前缀
  typeTopConfig: ``, // type文件顶部公用内容
  serviceTopConfig: `import request from '@/utils'\n`, // service文件顶部公用内容
  getTemp: `return request.get($requestUrl, { params: $params })`, // get方法body代码模版
  postTemp: `return request.post($requestUrl, $params)`, // post方法body代码模版
  exportApiTemp: `export const $apiName = (params: $reqInterface): $resInterface => {
      $body
  }
  `, // serviceApiType 为 default 时生效
  serviceApiType: 'class', // default 默认 class class形式输出
  apiUrlGroupLevel: 1
};

指令

swagger2ts --version (-V) // 查看版本号
swagger2ts --help (-h) // 查看帮助信息
swagger2ts --config (-c) // 指定配置文件

注意事项

目前只支持swagger2.0版本

只支持 get 和 post 请求方式,可根据项目不同 配置 get 和 post 请求模板

使用该工具前,请务必保证您的请求方法封装完成

目前返回信息中只导出data字段类型定义

更新事项

2023-07-20

v1.0.0

新组织,新包

2023-08-24

v1.0.4

支持多级输出

2023-09-01

v1.0.8

class输出模式改为static静态方法

1.1.3

2 months ago

1.1.2

2 months ago

1.1.1

2 months ago

1.1.0

2 months ago

1.0.19

4 months ago

1.0.18

4 months ago

1.0.17

7 months ago

1.0.16

9 months ago

1.0.15

9 months ago

1.0.14

9 months ago

1.0.13

9 months ago

1.0.12

9 months ago

1.0.11

9 months ago

1.0.10

9 months ago

1.0.9

9 months ago

1.0.8

9 months ago

1.0.7

9 months ago

1.0.6

9 months ago

1.0.5

9 months ago

1.0.4

9 months ago

1.0.3

9 months ago

1.0.2

9 months ago

1.0.1

9 months ago

1.0.0

10 months ago