logo

React 的 Reconciliation 过程

Published on

故事背景

React 的高效更新依赖于 Reconciliation,我研究了它的 diff 算法。

设计思路

  • 分析 key 的作用。
  • 理解 diff 的优化策略。
  • 核心逻辑(伪代码)

js

function reconcile(oldFiber, newElement) {
  if (oldFiber.type === newElement.type) {
    updateFiber(oldFiber, newElement.props);
  } else {
    replaceFiber(oldFiber, newElement);
  }
}
🤪 您也可以编辑此页: