apiResult.ts
interce MetaResult { //1.先定义meta 里面的数据结构
msg:string,
status:number,
}
interface MetaData { //2. 定义meta
meta: MetaResult,
}
//3. D 相当于接收到一个参数 这个参数是data对象里面的数据类型
export interface ApiDataResult<D> extends MetaData { // 定义请求成功之后返回的所有的数据的结构
data: D
}
api roles.ts
import axios from "axios";
import type { ApiDataResult } from './apiResult';
export interface allRightsResponse {
id:number,
authName:string,
pid:number | string,
path:number | string,
level?:string,
children?:allRightsResponse[],
}
export const allRights=async(type:string):Promise<ApiDataResult<Array<allRightsResponse>>>=>{
const res = await axios.get(`/rights/${type}`)
console.log(res.data);
return res.data;
}