1
0
Fork 0
Obsidian 管理的个人笔记仓库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

7 lines
704 B

# beginWork 和 completeWork
在 [[React 源码的碎片记录]] 中写了,在 React 的 Fiber 递归阶段会有两个函数,分别执行递和归两个动作,它们就是 beginWork 和 completeWork
```javascript
function beginWork(current, workInProgress, renderLanes) {}
```
### 小结
- 当一个 Fiber 节点进入 beginWork 时,它的目的是创建当前 Fiber 节点的一个子 Fiber 节点,会根据 Element 的类型进入不同的 update 逻辑,在 update 逻辑中,会先判断是否够存在对应的 current 节点(reconcileChildren)来决定标记是否追踪副作用(?),最后再根据 element child 的类型来执行不同的创建操作,最终创建子 Fiber 节点