component 组件的2个问题
1:只要执行 setState() 即使不改变状态数据 组件也会重新 render —效率低 2:只要当前组件 执行了 render() ,其子组件就会render 纵使子组件没用到父组件的任何数据 —效率低
解决办法:
使用PureComponent PureComponent 重写了 shoudComponentUpdate 只有 state 或 props 有变化 才返回 true
注意 只是对 state props 数据进行了 浅比较 如果是数据对象内部数据发生了变化 返回 false
所以不要直接修改 state 的数据进行 setState 而是要产生新数据
项目中一般用 PureComponent 来进行性能优化