React PureComponent 性能启发

152 阅读1分钟

易变数据不能使用一个引用 => 不变数据使用一个引用

'易变数据不能使用一个引用',是因为PureComponent是一个浅比较,数组等引用虽然里面等值可能在增加,修改,删减,但是它的引用地址(指针)一旦生成就不会改变

update = (e) => {
  this.props.update(e.target.value)
}
render() {
  return < MyInput onChange={this.update} />
}

那么我们是否可以借用引用,将子组件中不变的数据,改成引用,减少子组件的render

复杂状态与简单状态不要共用一个组件

将组件分类,将状态简单的内容封装成一个组件,那么这部分的内容render的次数会减少很多,不会因为和复杂状态的内容混合在一个父组件中,复杂状态的state改变,简单状态的组件也render

引用详细内容:React PureComponent 使用指南