我写了个yapi 转化前端ts请求接口的代码,真的很好用

YAPI-TS-GEN 使用指南

简介

YAPI-TS-GEN 是一个强大的 TypeScript 代码生成工具,专门用于将 YAPI 接口文档转换为 TypeScript 类型定义和 API 请求函数。它能够大大提高前端开发效率,确保 API 调用的类型安全。

主要功能

  1. 自动生成 TypeScript 接口定义
  2. 自动生成 API 请求函数
  3. 支持自定义请求函数
  4. 提供完整的类型提示和类型检查

安装方法

你可以使用 npm 或 yarn 安装:

bash 复制代码
# 使用 npm
npm install yapi-ts-gen --save-dev

# 使用 yarn
yarn add yapi-ts-gen -D

使用步骤

1. 初始化配置文件

首先,运行以下命令生成配置文件:

bash 复制代码
npx yapi-ts-gen -i

这将在你的项目根目录创建一个 yapi.config.js 文件。

2. 配置项目信息

打开 yapi.config.js 文件,配置你的 YAPI 项目信息:

javascript 复制代码
const config = [
  {
    // YAPI 导出地址(替换为你的 YAPI 地址)
    "yapiUrl": "http://your-yapi-domain/api/open/plugin/export-full?type=json&pid=your-project-id&status=all&token=your-token",
    
    // 生成文件的输出目录
    "outputDir": "./src/api",
    
    // 生成的文件名
    "outputFileName": "api.ts",
    
    // 生成代码的命名空间
    "namespace": "API",
    
    // 需要从 API 路径中移除的前缀
    "stripPathPrefixes": [
      "api",
      "v1",
      "v2"
    ],
    
    // 请求工具的导入路径
    "requestImportPath": "@/utils/request"
  }
];

module.exports = config;

3. 生成代码

配置完成后,运行以下命令生成 TypeScript 代码:

bash 复制代码
npx yapi-ts-gen -g

配置说明

  • yapiUrl: YAPI 项目的导出地址,需要包含项目 ID 和 token
  • outputDir: 生成的文件存放目录
  • outputFileName: 生成的文件名
  • namespace: 生成代码的命名空间,用于组织 API 定义
  • stripPathPrefixes: 需要从 API 路径中移除的前缀,用于简化生成的函数名
  • requestImportPath: 请求函数的导入路径,用于自定义请求实现

使用生成的代码

生成的代码会包含:

  1. 接口请求参数的类型定义
  2. 接口响应数据的类型定义
  3. 类型安全的 API 请求函数

示例:

typescript 复制代码
// 生成的代码可以这样使用
import { API } from './src/api/api';

// 调用接口(带完整的类型提示)
const response = await API.getUserInfo({ userId: 1 });

注意事项

  1. 确保你有正确的 YAPI 访问权限和 token
  2. 生成代码前请确保配置文件的路径正确
  3. 建议将生成的代码加入到 .gitignore 中,因为它们是自动生成的

更新和维护

当 YAPI 接口发生变化时,只需要重新运行生成命令即可更新代码:

bash 复制代码
npx yapi-ts-gen -g

这样就能保持前端代码与后端接口的同步更新。

相关推荐
唐叔在学习1 小时前
e.preventDefault()到底怎么用?
前端·javascript
Highcharts.js2 小时前
Highcharts React v4.2.1 正式发布:更自然的React开发体验,更清晰的数据处理
linux·运维·javascript·ubuntu·react.js·数据可视化·highcharts
new code Boy3 小时前
Vue2转Vue3速查表
前端·javascript·vue.js
紫_龙3 小时前
最新版vue3+TypeScript开发入门到实战教程之toRefs与toRef实用技巧
前端·javascript·typescript
大家的林语冰4 小时前
Vite 第 1 个 Rolldown 稳定版正式发布,前端构建又一波“工业革命“
前端·javascript·vite
嘉琪0015 小时前
前端数组核心方法(高级视角 + 场景 + 精简)——————2026 0309
开发语言·前端·javascript
颜酱6 小时前
二分图核心原理与判定算法
javascript·后端·算法
sibylyue6 小时前
Typescritpt、ES6
前端·javascript·vue.js
用户3076752811276 小时前
《拒绝卡顿:深入解析 AI 流式 Markdown 的高性能渲染架构》
前端·javascript
Mertens18746 小时前
Zero-Doc:极简的 Spec Coding 落地指南
前端·javascript·ai编程