react-memo浅析
React.memo是一个高阶组件,类似于React.PureComponent,不同于React.memo是function组件,React.PureComponent是class组件。
memo默认情况下只会对复杂对象做浅层比较,如果需要控制对比过程,需要传入第二个参数,
function MyComponent(props) {
/* 使用 props 渲染 */
}
function areEqual(prevProps, nextProps) {
/*
如果把 nextProps 传入 render 方法的返回结果与
将 prevProps 传入 render 方法的返回结果一致则返回 true,
否则返回 false,返回false则触发render
*/
}
export default React.memo(MyComponent, areEqual);