1
0
Fork 0
Browse Source

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

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

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

@ -66,8 +66,13 @@ createInstance 会调用 createElement 方法创建一个 DOM 实例,并调用 @@ -66,8 +66,13 @@ createInstance 会调用 createElement 方法创建一个 DOM 实例,并调用
### cloneChildFibers
这个函数从名字上就能看出来,目的是为了 clone Fiber 的 child 属性,这个函数会调用 createWorkInProgress 函数,从上边可以知道,这个函数可以根据传入的 current 和 WorkInProgress 进行判断是否创建一个新的 Fiber 节点或者复用已有的 current Fiber 节点,并将其互相链接,最终将结果返回,cloneChildFiber 接收到
这个函数从名字上就能看出来,目的是为了 clone Fiber 的 child 属性,这个函数会调用 createWorkInProgress 函数,从上边可以知道,这个函数可以根据传入的 current 和 WorkInProgress 进行判断是否创建一个新的 Fiber 节点或者复用已有的 current Fiber 节点,并将其互相链接,最终将结果返回,cloneChildFiber 接收到返回的 Fiber 子节点,将其链接到当前 WorkInProgress Fiber 的 child 属性上,并把 Fiber 子节点的 return 赋值 WorkInProgress Fiber
最后返回到 bailoutOnAlreadyFinishedWork 在由它返回到 beginWork,beginWork 流程执行结束
### 第二次触发更新
### createWorkInProgress
第一步很熟悉,有了前面两次执行的流程可以cai'dao
### 后续触发更新
Loading…
Cancel
Save