性能优化方案
shouldComponentUpdate
作为一个性能调优函数,控制组件自身或者子组件是否需要更新,尤其在子组件非常多的情况下, 需要进行优化
PureComponent
PureComponent按以下流程进行操作:
- 比较新props跟旧的props
- 比较新的state和老的state(值相等,或者对象含有相同的属性、且属性值相等 )
- 决定shouldcomponentUpdate 返回true或者false,
- 从而决定要不要呼叫 render function。
注意:如果你的 state 或 props 『永远都会变』,那 PureComponent 并不会比较快,因为 shallowEqual 也需要花时间。