问题
- 用debounce 包裹函数用来防抖,不执行被包裹的函数
原因
- 由于使用hooks,它的执行相当于每次都创建一个新的debounce
解决
由于hooks useCallback 可以缓存函数可以用它来解决
import { debounce } from "lodash";
const function = ()=>{
// ... to do something
}
const debounceFn= useCallback(
debounce((xxx) => function(xxx), 200)
);
return <div onClick={debounceFn}><div/>