useCallback
优质
小牛编辑
125浏览
2023-12-01
在重新渲染时可以减少重复执行,Rax 做了许多优化。最简单的方法之一就是内联的使用 useCallback,传递内联回调和一组输入。 useCallback 提供了一种简单的方法来优化这些函数,通过记忆提供给它的函数,将对代码的影响降到最低。就像 useEffect 一样,我们可以告诉它它所依赖的值,这样它就不会发生不必要的变化。useCallback 将返回一个 callback,该版本仅在其中一个输入发生更改时才会更改,以防止不必要的渲染(例如,shouldComponentUpdate)。
useCallback(fn, inputs) 等价于 useMemo(() => fn, inputs)。
import { useCallback } from 'rax';
const memoizedCallback = useCallback(
() => {
doSomething(a, b);
},
[a, b],
);