@kdesigner/core
KDesigner 网络请求库 - 基于 axios 的 HTTP 客户端封装,面向 AMIS 场景提供 fetcher 适配与业务 API。
✨ 特性
- 🚀 基于 axios - 稳定可靠的底层请求实现
- 🔌 AMIS fetcher 适配 -
ajaxFetch/fetcherOk/responseOk等开箱即用的适配层 - 🧩 业务 API 封装 - 内置
UserApis、PageApis等常用接口 - 💾 请求缓存 -
withPageCache/withDictCache提供页面与字典级缓存 - 🛡️ TypeScript 支持 - 完整的类型定义(
FetcherRequest/FetcherResult等)和类型推导 - ⚙️ 高度可定制 - 支持拦截器、多实例、取消令牌
- 🔄 框架无关 - 可以在 Vue / React 等各种框架中使用
📦 安装
pnpm add @kdesigner/core
🚀 快速开始
import { ajaxFetch, UserApis, fetcherOk } from '@kdesigner/core'
// 1. 作为 AMIS fetcher 使用
const result = await ajaxFetch({
url: '/api/users',
method: 'get'
})
// 2. 使用内置业务 API
const user = await UserApis.getCurrentUser()
// 3. 构造标准响应
fetcherOk({ status: 0, data: user })
📚 主要模块
| 模块 | 说明 |
|---|---|
ajax | axios 实例、ajaxFetch / ajaxRequest、取消令牌 |
api | UserApis / PageApis 业务接口,withPageCache / withDictCache 缓存工具 |
adapter | registerAdapter 等运行时适配注册 |
graphql | GraphQL 请求支持 |
loader | 资源加载器 |
scope / schema-type | 作用域与 Schema 类型定义 |
🛠 开发指南
# 构建
pnpm build
# 测试
pnpm test
# 代码检查
pnpm lint
📝 许可证
MIT