From 348f0fa33bb74dab9272c57d5cf34aa9eb3ced3c Mon Sep 17 00:00:00 2001 From: YuJian Date: Thu, 14 Apr 2022 10:22:29 +0800 Subject: [PATCH] vault backup: 2022-04-14 10:22:29 --- 自顶向下学 React 源码/React 源码的碎片记录.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/自顶向下学 React 源码/React 源码的碎片记录.md b/自顶向下学 React 源码/React 源码的碎片记录.md index 4010e58..6d58096 100644 --- a/自顶向下学 React 源码/React 源码的碎片记录.md +++ b/自顶向下学 React 源码/React 源码的碎片记录.md @@ -21,4 +21,5 @@ - reconcileChildren 方法接受 current 参数,通过判断这个参数是否为 null,分别执行 mountChildFibers 或 reconcileChildFibers 方法 - mountChildFibers 和 reconcileChildFibers 都是由 ChildReconciler 方法创建的,只是传入的布尔值会不同,而这个参数表示是否追踪副作用,mountChildFibers 为 false,reconcileChildFibers则相反 - 以 reconcileChildFibers 为例,会对 Children 的类型做判断,对判断结果分别做相应操作 -- completeWork 会对 beginWork 创建好的 Fiber 进行填充,根据 Fiber 类型的不同有不同的处理逻辑,其中有一步就是创建真实 DOM 元素并将之前创建好的 DOM 元素插入 \ No newline at end of file +- completeWork 会对 beginWork 创建好的 Fiber 进行填充,根据 Fiber 类型的不同有不同的处理逻辑,其中有一步就是创建真实 DOM 元素并将之前创建好的 DOM 元素插入 +- finalizeInitChildren 为创建的 DOM 元素,插入已有的 props,内部也根据 Fiber 节点的 tag 区分不同的处理逻辑,还有对 props 是否合法的校验,甚至对 props 的属性y \ No newline at end of file