前言
简单的把这个package的README搬运过来, 如果你的团队在用 apifox 在线接口文档管理工具, 可以结合api-refs来生成标准的前端调用代码. 用来减少工作量和整合团队部分的代码风格.
这是一个能够显著提高前端接口管理效率的工具。基于 apifox 的 JSONSchema 规范, 生成前端项目使用的接口调用文件.
NPM
支持情况
- apifox [✔]
- apipost []
- swagger []
目前仅完成了 apifox (因为我们用的是这个平台~), 后续有考虑过加入 apipost、swagger 的支持.
特性
-
🚀 效率提升 自动化完成前端接口对接工作, 减少接口对接的工作量.
-
🍼 类型提示 生成结果完美还原接口文档类型, 能够显著降低开发阶段代码拼写错误的产生.
-
📖 配置简单 配置文件提供了
JSONSchema支持, 能够及时检测配置错误、或工具更新产生的配置差异. -
✈ 及时性 可观测接口文档变化, 结合 git 工具, 可在每次生成后, 实时反馈接口文档的变化.
-
📌一致性 通过一致的代码结构, 减少不同代码风格产生的差异, 有利于大体量项目场景的长期维护.
-
其他
- module support:
cjs、esm - 更完善地参数类型支持:
params,data,header,cookie,auth
- module support:
生成结果示例
import axios from 'axios'
/* <i.ts> aab */
/* @util <api-refs@1.0.0-alpha.6> */
/* @datasouce apifox */
/* @total 2 */
/* @projects
- [zzzz](https://www.apifox.cn/web/project/2303478)
*/
/**
* response | 未命名接口
*
* @function abawfe
* @status (200) 成功
* @responseType json
*/
export interface IAbawfeResponse {}
/**
* 未命名接口
*
* @link https://app.apifox.com/link/project/2303478/apis/api-91851741
* @description qwdq
* @updateAt 2023-06-28T10:17:30.000Z
* @author 李斌951
*/
export const abawfe = (): Promise<IAbawfeResponse> => {
return axios({
method: 'GET',
url: '/abawfe'
})
}
/**
* response | 未命名接口
*
* @function qdwqwd
* @status (200) 成功
* @responseType json
*/
export interface IQdwqwdResponse {}
/**
* 未命名接口
*
* @link https://app.apifox.com/link/project/2303478/apis/api-91851764
* @updateAt 2023-06-28T10:17:36.000Z
* @author 李斌951
*/
export const qdwqwd = (): Promise<IQdwqwdResponse> => {
return axios({
method: 'GET',
url: 'qdwqwd'
})
}