Knife4j Swagger Vue3 TSX 复刻插件
Go to file
2026-06-03 16:07:41 +08:00
.husky feat: 发布自研 Knife4j 适配包 2026-06-03 16:07:41 +08:00
apps/playground feat: 发布自研 Knife4j 适配包 2026-06-03 16:07:41 +08:00
packages feat: 发布自研 Knife4j 适配包 2026-06-03 16:07:41 +08:00
scripts feat: 发布自研 Knife4j 适配包 2026-06-03 16:07:41 +08:00
.gitignore feat: 发布自研 Knife4j 适配包 2026-06-03 16:07:41 +08:00
package.json feat: 发布自研 Knife4j 适配包 2026-06-03 16:07:41 +08:00
pnpm-lock.yaml feat: 发布自研 Knife4j 适配包 2026-06-03 16:07:41 +08:00
pnpm-workspace.yaml feat: 初始化 Knife4j Swagger Vue3 插件 2026-06-03 07:32:20 +08:00
README.md feat: 初始化 Knife4j Swagger Vue3 插件 2026-06-03 07:32:20 +08:00
tsconfig.base.json feat: 发布自研 Knife4j 适配包 2026-06-03 16:07:41 +08:00
tsconfig.json feat: 发布自研 Knife4j 适配包 2026-06-03 16:07:41 +08:00

knife4j-swagger-vue3

基于 Vue3 重构的 Knife4j 风格 Swagger/OpenAPI 文档 UI。

目标

  • 解析逻辑严格遵守 Swagger 2.0 / OpenAPI 3.x 标准字段。
  • UI 布局、颜色、表格和接口树风格对齐 Knife4j。
  • 支持深层 $refallOfoneOfanyOf、数组对象和响应示例。
  • 不依赖旧 Knife4j 前端解析器,避免响应参数和响应示例显示不稳定。

目录

路径 说明
packages/openapi-parser Swagger/OpenAPI 标准解析器
packages/knife4j-vue3-ui Vue3 Knife4j 风格 UI 组件
apps/playground 本地调试入口,默认代理到 127.0.0.1:48085

使用

pnpm install
pnpm dev

默认打开 http://127.0.0.1:5188,服务列表会读取:

  • /api-json
  • /api/admin-json
  • /api/qqbot-json
  • /api/wordpress-json
  • /api/basic-json

标准字段约定

响应示例按以下优先级读取:

  1. responses[code].content[mediaType].example
  2. responses[code].content[mediaType].examples[*].value
  3. responses[code].schema.example
  4. components.schemas[*].example / definitions[*].example
  5. 根据 schema 的 properties/items/type/default/example 生成兜底示例

响应参数按标准 schema 展开,不读取 Knife4j 私有字段。