1
0
Fork 0
Browse Source

vault backup: 2022-04-13 11:21:28

master
YuJian 3 years ago
parent
commit
5dfb071868
  1. 2
      自顶向下学 React 源码/React 源码的碎片记录.md
  2. 2
      自顶向下学 React 源码/beginWork 和 completeWork.md

2
自顶向下学 React 源码/React 源码的碎片记录.md

@ -20,4 +20,4 @@
- updateHostComponent 方法中的 reconcileChildren 方法会为当前 Fiber 节点创建它的子 Fiber 节点,也就是 Fiber 中的 child 属性 - updateHostComponent 方法中的 reconcileChildren 方法会为当前 Fiber 节点创建它的子 Fiber 节点,也就是 Fiber 中的 child 属性
- reconcileChildren 方法接受 current 参数,通过判断这个参数是否为 null,分别执行 mountChildFibers 或 reconcileChildFibers 方法 - reconcileChildren 方法接受 current 参数,通过判断这个参数是否为 null,分别执行 mountChildFibers 或 reconcileChildFibers 方法
- mountChildFibers 和 reconcileChildFibers 都是由 ChildReconciler 方法创建的,只是传入的布尔值会不同,而这个参数表示是否追踪副作用,mountChildFibers 为 false,reconcileChildFibers则相反 - mountChildFibers 和 reconcileChildFibers 都是由 ChildReconciler 方法创建的,只是传入的布尔值会不同,而这个参数表示是否追踪副作用,mountChildFibers 为 false,reconcileChildFibers则相反
- 以 reconcileChildFibers 为例,会对 Children 的类型做判断,对判断结果分别做相应操作,以 - 以 reconcileChildFibers 为例,会对 Children 的类型做判断,对判断结果分别做相应操作

2
自顶向下学 React 源码/beginWork 和 completeWork.md

@ -3,3 +3,5 @@
```javascript ```javascript
function beginWork(current, workInProgress, renderLanes) {} function beginWork(current, workInProgress, renderLanes) {}
``` ```
### 小结
- 当一个 Fiber 节点进入 beginWork 时,它的目的是创建当前 Fiber 节点的一个子 Fiber 节点,会根据 Element 的类型进入不同的 update 逻辑,在 update 逻辑中,会先判断是否够存在对应的 current 节点(reconcileChildren),来标记
Loading…
Cancel
Save