memo、useMemo、useCallback

memo

memo是只能在函数组件中使用的,类似于class组件中的pureComponent。pureComponent只能对组件中的props和state进行浅层对比。memo第一个参数传入组件,而可以在第二个参数中传入一个函数,其中包含对数据的对比,可以实现深层对比。此时就类似于shouldComponentUpdate。

useMemo

memo只能实现组件内所有部分都不重渲染,而useMemo可以实现只让部分不重新渲染。第一个参数传入处理函数,第二个参数传入依赖项。只有依赖项改变时,才会执行处理函数,类似于Vue中的computed计算属性。

在render生命周期中进行

useCallback

参数与useMemo相类似,但是useCallback返回的是函数,而不是函数执行结果

posted @ 2020-05-25 10:39  ashen1999  阅读(585)  评论(0编辑  收藏  举报