有个很重要的方向:
就是避免不必要的渲染

React将render函数返回的虚拟DOM树与老的进行比较,从而确定DOM要不要更新,怎么更新。

render何时会被触发

组件挂载:组件构建并将DOM插入页面的过程就是挂载。

setSate()方法被调用

通常情况下,执行 setState 会触发 render。

父组件重新渲染

例如在父组件里面写setState??

优化render我们能做什么?

  • 在react类组件中,可以使用shouldComponentUpdate或者PureComponent来减少因父组件更新。

shouldComponentUpdate 来决定是否组件是否重新渲染,如果不希望组件重新渲染,返回 false 即可。

  • 利用高阶组件

在函数组件中,可以利用高阶组件。

  • 使用 React.memo

16.6一个新api,用来缓存组件的渲染,避免不必要的更新。不同的是,React.memo只能用于函数组件。

  • 合理(纵向)拆分组件

dabaiaijianshen
18 声望6 粉丝