From 7f24aaafeb3a1ba206b9eead38b64fd210f7fa01 Mon Sep 17 00:00:00 2001 From: YuJian Date: Wed, 20 Apr 2022 11:20:31 +0800 Subject: [PATCH] vault backup: 2022-04-20 11:20:31 --- React 的源码深入/React Reconciler - Fiber 创建.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/React 的源码深入/React Reconciler - Fiber 创建.md b/React 的源码深入/React Reconciler - Fiber 创建.md index 36aaf1f..3d075ee 100644 --- a/React 的源码深入/React Reconciler - Fiber 创建.md +++ b/React 的源码深入/React Reconciler - Fiber 创建.md @@ -122,7 +122,11 @@ createInstance 会调用 createElement 方法创建一个 DOM 实例,并调用 - 当找到 children 属性,会将其转换为字符串和 属性名一起 `push` 进 `updatePayload` - 当找到除 `dangerouslySetInnerHTML` 之外的特殊属性,会对其进行专属的逻辑 - 最后没有找到以上属性,会进入最后的 else 逻辑:给 `updatePayload` 数组 `push` 进 props 属性名和 对应的属性值,进入下一轮循环 -- 当所有的循环结束会pa'm'd + +当所有的循环结束会判断 styleUpdates 是否合法(不为 null,且数组长度不为0),合法则进入将调用 validateShorthandPropertyCollisionInDev 函数,传递 styleUpdates 和 新 props style 属性,最后将 `style 字符串` 和 `styleUpdates` 推入 `updatePayload` +返回 updatePayload + +回到 `updateHostComponent` 函数,将 ## 第二次触发更新和后续触发更新