react memo函数

react组件有一个shouldComponentUpdate() 的生命周期函数

可以根据函数返回的布尔值来判断这次渲染是否执行
1.true。渲染
2.false。不渲染

在class组件中可以轻易做到,但是如果在函数组件做到不是一件容易事,使用Hooks也是继承了多个钩子函数。

所以引入了memo()这个高阶组件,也就是给memo传入组件,就让这个组件加上了一个经过简单逻辑判断的shouldComponentUpdate() 的生命周期函数

export default React.memo(MyComponent, areEqual);

接受第二个参数,可以不适用他memo简单的逻辑判断,而是使用自定义的函数

function areEqual(pre,now){
//true和false的逻辑和shouldComponentUpdata()相反
}

你可能感兴趣的:(react,react.js,javascript,前端)