易变数据不能使用一个引用 => 不变数据使用一个引用
'易变数据不能使用一个引用',是因为PureComponent是一个浅比较,数组等引用虽然里面等值可能在增加,修改,删减,但是它的引用地址(指针)一旦生成就不会改变
update = (e) => {
this.props.update(e.target.value)
}
render() {
return < MyInput onChange={this.update} />
}
那么我们是否可以借用引用,将子组件中不变的数据,改成引用,减少子组件的render
复杂状态与简单状态不要共用一个组件
将组件分类,将状态简单的内容封装成一个组件,那么这部分的内容render的次数会减少很多,不会因为和复杂状态的内容混合在一个父组件中,复杂状态的state改变,简单状态的组件也render