1
0
Fork 0
Browse Source

vault backup: 2022-04-20 10:30:31

master
YuJian 3 years ago
parent
commit
2d35bee630
  1. 6
      React 的源码深入/React Reconciler - Fiber 创建.md

6
React 的源码深入/React Reconciler - Fiber 创建.md

@ -101,8 +101,12 @@ createInstance 会调用 createElement 方法创建一个 DOM 实例,并调用
- 如果没有以上属性,即没有 style 和 特殊属性,会进入最后的 else 逻辑:给 `updatePayload` 数组 `push` 进属性名和 null,进入下一轮循环 - 如果没有以上属性,即没有 style 和 特殊属性,会进入最后的 else 逻辑:给 `updatePayload` 数组 `push` 进属性名和 null,进入下一轮循环
循环新 props 属性: 循环新 props 属性:
- 以下条件跳出当前循环; - 以下条件跳出当前循环
1. 新 props 自身不存在当前属性 1. 新 props 自身不存在当前属性
2. 新 props 属性值和旧 props 属性值相同(引用相同)
3. 新旧 props 属性值都为 null
- 当找到 style 属性:
- 如果新 props 属性值存在且值合法(就是转换成 boolean 不为 false),会调用 Object.freeze 函数冻结当前属性值
## 第二次触发更新和后续触发更新 ## 第二次触发更新和后续触发更新

Loading…
Cancel
Save