From 58431208c7edc69fa9db12e86b6722a6703a5352 Mon Sep 17 00:00:00 2001 From: YuJian Date: Wed, 20 Apr 2022 11:05:31 +0800 Subject: [PATCH] vault backup: 2022-04-20 11:05:31 --- React 的源码深入/React Reconciler - Fiber 创建.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/React 的源码深入/React Reconciler - Fiber 创建.md b/React 的源码深入/React Reconciler - Fiber 创建.md index b71c5cb..623f14c 100644 --- a/React 的源码深入/React Reconciler - Fiber 创建.md +++ b/React 的源码深入/React Reconciler - Fiber 创建.md @@ -114,8 +114,9 @@ createInstance 会调用 createElement 方法创建一个 DOM 实例,并调用 - 如果出现旧 `props style` 有 style 样式,但是新 `props style` 没有的也就是新增样式的情况,那么会初始化 `styleUpdates` 对象为空(如果已经初始化过就会跳过),并在上边新增当前 style 属性的 key 并赋值空字符串 - 开始遍历新 props style - 如果找到新 `props style` 属性存在,但是与旧 `props style` 属性不同,也就是样式发生修改的情况,那么会初始化 `styleUpdates` 对象为空(如果已经初始化过就会跳过),并在上边对当前 style 属性的 key 做新增或是修改,值为新 `props style` 属性 - - 如果旧 props 不存在 style 属性或者等于 null: - - + - 如果旧 `props` 不存在 style 属性或者等于 `null`: + - 如果 `styleUpdates` 不为 `null`,且是数组时长度不等于 0,给 `updatePayload` `push` 进 `style` 和 `styleUpdates` + - 否则给 `styleUpdates` 赋值 `props style` 属性 ## 第二次触发更新和后续触发更新