UNPKG

@fle-ui/plus-goods-detail-drawer

Version:

@fle-ui/plus-goods-detail-drawer

21 lines 658 B
import { useCallback, useRef } from 'react'; /** * 防抖 Hook * @param callback 要防抖的回调函数 * @param delay 延迟时间(毫秒) * @returns 防抖后的函数 */ export var useDebounce = function useDebounce(callback, delay) { var timeoutRef = useRef(null); return useCallback(function () { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } if (timeoutRef.current) { clearTimeout(timeoutRef.current); } timeoutRef.current = setTimeout(function () { callback.apply(void 0, args); }, delay); }, [callback, delay]); };