1.所有的this指向都在constructor中绑定,就避免了多次绑定。
this指向问题,只有当this指向我们定义的组件时才能去对state做修改,不去改变this指向,在该方法中this就指向undefined。
2.setState是异步函数
如果在短时间之中多次改变state的值,那么就可以只用改变最后一次state的值,避免多次修改state。
3.虚拟DOM的使用
避免了真实DOM的多次创建,极大提升性能。
4.diff算法
用简单的同层比对算法来比对虚拟DOM。
key值的使用,使得比较速度更快。
5.shouldComponentUpdate
当父组件发生改变,而子组件中的数据没有改变时,就不去重新渲染组件,避免了不必要的渲染。
shouldComponentUpdate(nextProps, nextState) {
if(nextProps.content !== this.props.content) {
return true;
}else {
return false;
}
}
以上的方法都能提升性能。