用来处理防抖的函数。接受两个参数callback
和delay
,分别为要处理的函数和延迟时间。
import { useDebouncedCallback } from '@buzuosheng/hooks'
function Input({ defaultValue }) {
const [value, setValue] = useState(defaultValue)
const debounced = useDebouncedCallback((value) => {
setValue(value)
}, 1000)
return (
<div>
<input
defaultValue={defaultValue}
onChange={(e) => debounced(e.target.value)}
/>
<p>Debounced value: {value}</p>
</div>
)
}
const debounced: Function = useDubouncedFunction(fn: Function, delay: number)
fn
: Function
- 需要防抖执行的函数;ms
: number
- 延迟时间;debounced
: Function
- 处理后的防抖函数