UNPKG

linkmore-design

Version:

🌈 🚀lm组件库。🚀

19 lines (17 loc) 627 B
import { useCallback, useEffect } from 'react'; import { debounce } from 'lodash'; // 延迟/防抖加载函数, 默认延迟200ms export var useDelayedFn = function useDelayedFn() { var wait = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 200; var delayedQuery = useCallback(debounce(function (fn) { typeof fn === 'function' ? fn === null || fn === void 0 ? void 0 : fn() : fn; }, wait), []); // 防止异步任务数导致的内存泄漏 useEffect(function () { return function () { delayedQuery.cancel(); }; }, []); return delayedQuery; }; export default useDelayedFn;