st-common-req
Version:
Small Tail 前端通用请求库
21 lines (20 loc) • 1.66 kB
TypeScript
import { ResType } from '../../res/types/res-type.ts';
/**
* 生成通过请求获取数据的处理函数
*
* @template T 数据类型
* @param {(filters?: Record<string, any>) => Promise<ResType>} getDataApi 请求获取数据的 API 函数,调用该函数时,会向该函数传递一
* 个对象类型的参数,该参数为通过获取数据时的筛选过滤条件
* @param {(data: T) => void} setData 保存数据的处理函数,该函数接收通过请求获取的数据作为参数
* @param {(value: boolean) => void} setLoading 设置是否为加载状态的处理函数,只有传递了该函数参数时,才会调用该函数设置加载状态,调用该函
* 数时,会传入一个布尔类型的参数,该参数为是否为加载状态,true 为加载状态,false 为结束加载状态
* @param {number} funThrottleTime 对生成的通过请求获取数据的处理函数进行节流处理的时间间隔,单位为毫秒,默认为 1000 毫秒
* @returns {(filters?: Record<string, any>) => Promise<ResType>} 通过请求获取数据的处理函数,生成的函数可以接收一个对象类型的参数,该
* 参数为通过获取数据时的筛选过滤条件,生成的函数的返回值是一个包含 {@link ResType} 类型数据的 Promise 对象
*/
export declare const genGetDataByReqHandler: <T>({ getDataApi, setData, setLoading, funThrottleTime, }: {
getDataApi: (filters?: Record<string, any>) => Promise<ResType>;
setData: (data: T) => Promise<void>;
setLoading?: (value: boolean) => void;
funThrottleTime?: number;
}) => (filters?: Record<string, any>) => Promise<ResType>;