React 的 Virtual DOM 是一个虚拟概念,下面两种类型都对应了 Virtual DOM
- React Element
- Fiber
在 Fiber 出现之前,DOM Diff 算法作用在 React Element 上
在 Fiber 出现后,DOM Diff 算法发生在 Fiber 和 WorkInProgress Fiber 之间,并计算更新
- 提供并行( Concurrent Mode )的核心是 Fiber
- 提供渲染能力的是
Render
(eg.ReactDOM.render) - 提供 DOM Diff 的模块是 Reconciler
render = Reconciler(HostConfig)
// HostConfig 告诉 React 增加、修改节点的操作方法
调和器(Reconciler)将元素层级关系、更新 diff 和渲染操作整合在一起