1
0
Fork 0
Browse Source

vault backup: 2022-04-16 14:59:45

master
YuJian920 3 years ago
parent
commit
a451342bc2
  1. 4
      React 的源码深入/React Reconciler - Fiber 创建.md

4
React 的源码深入/React Reconciler - Fiber 创建.md

@ -14,7 +14,7 @@ createWorkInProgress 之后,Fiber 的操作就会交由 beginWork 和 complete
### beginWork ### beginWork
> beginWork 执行在递归节点的 Fiber 执行之前,主要是为传入的 Fiber 节点根据类型创建第一个子 Fiber 节点 > beginWork 执行在递归节点的 Fiber 创建之前,主要是为传入的 Fiber 节点根据类型创建第一个子 Fiber 节点
首先会对 current 做空值判断,因为对于首屏渲染而言,当前传入的 current Fiber 节点是 FiberNode,所以是存在的,会进入 current !== null 的逻辑,然后会判断当前 Fiber 节点是否发生变化,然后赋值 didReceiveUpdate 做更新标识,判断的条件如下: 首先会对 current 做空值判断,因为对于首屏渲染而言,当前传入的 current Fiber 节点是 FiberNode,所以是存在的,会进入 current !== null 的逻辑,然后会判断当前 Fiber 节点是否发生变化,然后赋值 didReceiveUpdate 做更新标识,判断的条件如下:
1. 新旧 props 是否相同 1. 新旧 props 是否相同
@ -39,6 +39,8 @@ updateHostRoot 函数中首先会执行 pushHostRootContext 方法,这个方
### completeWork ### completeWork
> completeWork 执行在递归节点的 Fiber 创建之后,主要是为创建好的 Fiber 节点插入内容和插入真实 DOM 树
### 第一次触发更新 ### 第一次触发更新
### 第二次触发更新 ### 第二次触发更新

Loading…
Cancel
Save