rc-hooks
Version:
React Hooks Library.
24 lines (23 loc) • 805 B
TypeScript
/**
* 用来处理防抖函数的 Hook。
*
* @param {Function} fn 需要防抖的函数。
* @param {number} [wait=0] 防抖等待时间,单位为毫秒。默认 `0`。
* @param {boolean} [immediate=false] 是否在延迟开始前调用。默认 `false`。
* @returns
* @example
* const [value, setValue] = useState(0);
* // 频繁调用 run,但只会在所有调用完成 500ms 后执行一次函数
* const { run } = useDebounceFn(setValue, 500);
*/
declare function useDebounceFn<T extends (...args: any[]) => any>(fn: T, wait?: number, immediate?: boolean): {
run: {
(this: any, ...args: any[]): any;
cancel: () => void;
flush: () => any;
pending: () => boolean;
};
cancel: () => void;
flush: () => any;
};
export default useDebounceFn;