PureComponent
一种纯组件,用于不必要的渲染,从而提高渲染效率。
优化: 如果一个组件的属性和状态 都没有发生变化 重新渲染这个组件是没有必要的
PureComponent
是一个组件 如果某个组件继承该组件,则该组件的shouldComponentUpdate
会进行优化,
对属性和状态进行浅比较 如果相等则不渲染
对于函数式组件来说可以使用 React.memo
这个高阶函数 来进行对渲染效率的优化, React.memo
实现原理如下:
const memo = (Component) => {
return class Memo extends PureComponent {
render (){
return <Component {...this.props}>
}
}
};