预定义模板
使用内置的五套预定义模板
alova
按需引入模式,每个 API 作为独立函数导出,支持 Tree-shaking。
import { alova } from 'wormajs/plugin';
plugins: [alova({ framework: 'vue' })]模板结构:
components.d.ts
helper.ts
index.ts
typed.ts
index.ts
pet.ts
store.ts
user.ts
使用方法:
import { getUserList } from './api/alova/services/user';
const users = await getUserList({ params: { page: 1, size: 10 } });支持 data(请求体)、params(查询参数)、pathParams(路径参数),以及 alova method 的配置参数(如 cacheFor、transform 等)。
alovaGlobals
全局挂载模式,兼容 alova@3(仅 v3,不再支持 v2)。
import { alovaGlobals } from 'wormajs/plugin';
plugins: [alovaGlobals({
global: 'Apis',
globalHost: 'globalThis',
})]参数说明:
interface TemplateAlovaGlobalsConfig {
/** 全局导出的 api 名称,默认为 'Apis',多 generator 时为必填且不可重复 */
global?: string;
/** 全局 api 对象挂载的宿主对象,默认为 'globalThis' */
globalHost?: string;
/** 使用 import type 方式导入,默认 false */
useImportType?: boolean;
}
global参数会拼接在每个 API 的pathKey和defaultValue最前面(如Apis.pet.addPet),确保全局引用路径正确。
模板结构:
apiDefinitions.ts
createApis.ts
globals.d.ts
index.ts
使用方法:
// main.ts — 只需导入一次
import './api/alova-globals';
// 任意文件中直接使用
const user = await Apis.user.getUserById({ pathParams: { userId: 123 } });支持 data、params、pathParams,以及 alova method 的配置参数。
axios
生成基于 axios 的调用函数,采用按需引入模式。
import { axios } from 'wormajs/plugin';
plugins: [axios()];模板结构:
components.d.ts
helper.ts
index.ts
index.ts
pet.ts
store.ts
user.ts
使用方法:
import { createUser } from './api/axios/services/user';
const newUser = await createUser({ data: { name: 'Alice', email: 'alice@example.com' } });支持 data、params、pathParams,以及 axios 请求配置参数(如 timeout、headers 等)。
fetch
生成基于原生 fetch 的调用函数,零额外依赖,采用按需引入模式。
import { fetch } from 'wormajs/plugin';
plugins: [fetch()];模板结构:
FetchClient.ts
components.d.ts
helper.ts
index.ts
index.ts
pet.ts
store.ts
user.ts
使用方法:
import { getUserList } from './api/fetch/services/user';
const users = await getUserList({ params: { page: 1, size: 10 } });支持 data、params、pathParams,以及 fetch 请求配置参数。
ky
生成基于 ky 的调用函数,采用按需引入模式。
import { ky } from 'wormajs/plugin';
plugins: [ky()];模板结构:
components.d.ts
helper.ts
index.ts
index.ts
pet.ts
store.ts
user.ts
使用方法:
import { getUserById } from './api/ky/services/user';
const user = await getUserById({ pathParams: { userId: 123 } });支持 data、params、pathParams,以及 ky 请求配置参数。