React SCU

React SCU

父组件更新导致子树更新时, 子组件树中的组件会经历一个优化阶段 称之为 SCU

PureComponent, shouldComponentUpdate

  1. 纯组件和shouldComponentUpdate 方法

纯组件 React 会自动使用 shadowEqual 比较 属性来判断组件是否需要更新
shouldComponentUpdate React 会使用该方法来判断是否更新该组件

childContextTypes, contextTypes, getChildContext 和 React.Context

  1. childContextTypes, contextTypes, getChildContext 是旧的Context方案
  2. 旧的Context 是遇到一个 getChildContext 则将 context 压栈, 当组件更新完毕时, context 出栈, 碰到 contextTypes时 根据已经拥有的context值和contextTypes来计算context

Context 与 SCU

  1. 旧的Context在SCUture时, 不会重新渲染子节点
  2. 新的Context在碰到Context.Provider的时候会将所有的子节点为Context.Consumer之间的节点标志为需要更新

你可能感兴趣的:(React SCU)