work for schoolmind-projects
const { data, loading, run } = useFetch(ajaxFn, options);
- ajaxFn: 请求函数
- options:
- manual: boolean 初始化时是否自动执行请求 默认值:false
- initialData: any 初始化数据
- deps: any[] 在非手动模式(manual=false)下会根据依赖项的变化重新发起请求
- loadingDelay:number 设置 loading 展示的毫秒数
- defaultParams:每次请求都会带上的参数
- formatResult:格式化数据函数回调
- onError: 错误回调
- data: 请求数据或经过 formatResult 后的数据
- loading: 请求是否正在加载中
- run: 可传入新的参数对象与 defaultParams 合并发送请求,默认只带上 defaultParams
const {
data: gradeList,
run,
loading: gradeLoading,
} = useFetch<ResponseListData<Grade>>(gradeAPI.search, {
defaultParams: {
page: 1,
size: 1000,
},
manual: true,
loadingDelay: 350,
deps,
formatResult: (data: ResponseListData<Grade & { number: number }>) => {
data.list.forEach((item, index) => {
item.number = index;
});
return data;
},
});