---
name: api-service
description: 创建新的 API 服务模块,包含 TypeScript 类型定义
创建新的 API 服务模块时使用此工作流。
创建一个类型安全的 API 服务模块,包含正确的请求/响应类型定义。
src/api/**/*.tssrc/services/**/*.ts// types.ts
export interface User {
id: number;
name: string;
email: string;
createdAt: string;
}
export interface UserQuery {
page?: number;
pageSize?: number;
name?: string;
}
export interface CreateUserDTO {
name: string;
email: string;
}
export interface UserListResponse {
list: User[];
total: number;
}
// user.ts
import { request } from '#/utils/request';
import type { User, UserQuery, CreateUserDTO, UserListResponse } from './types';
export const userApi = {
// 获取用户列表
getList: (params?: UserQuery) =>
request.get<UserListResponse>('/users', { params }),
// 根据ID获取用户
getById: (id: number) =>
request.get<User>(`/users/${id}`),
// 创建用户
create: (data: CreateUserDTO) =>
request.post<User>('/users', data),
// 更新用户
update: (id: number, data: Partial<CreateUserDTO>) =>
request.put<User>(`/users/${id}`, data),
// 删除用户
delete: (id: number) =>
request.delete<void>(`/users/${id}`),
};