UNPKG

@td-design/rn-hooks

Version:

从ahooks里面抽取的一些在rn项目里可以使用的hooks。提高开发效率

24 lines (21 loc) 739 B
import { __read } from '../_virtual/_tslib.js'; import { useState, useEffect } from 'react'; import useDebounceFn from '../useDebounceFn/index.js'; /** * 用来处理防抖值的 Hook。 * @param value 需要防抖的值 * @param options 配置防抖的行为 * @returns */ function useDebounce(value, options) { var _a = __read(useState(value), 2), debounced = _a[0], setDebounced = _a[1]; var run = useDebounceFn(function () { setDebounced(value); }, options).run; useEffect(function () { run(); // eslint-disable-next-line react-hooks/exhaustive-deps }, [value]); // 每次value变化的时候,都触发debounce的run方法 return debounced; } export { useDebounce as default };