useCallback&useMemo

400 阅读1分钟

1.useCallback常见运用场景:将传给子组件的函数用 useCallback 包裹。注意点:当依赖项发生变化时才会返回一个刷新后的函数引用。

2.useMemo常见运用场景:避免在每次渲染时都进行高开销的计算。注意点:当依赖项发生变化时会才会执行函数,返回一个memoized值。

useMemo 的用法跟 useCallback 基本一样,区别就是当依赖项没有改变时useCallback 返回的是缓存的方法,useMemo返回的是缓存的。从而优化性能。useCallback(fn, deps) 相当于 useMemo(() => fn, deps)

useCallback不会执行fn,useMemo会。