1
0
Fork 0
Browse Source

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

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

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

@ -109,9 +109,9 @@ createInstance 会调用 createElement 方法创建一个 DOM 实例,并调用
- 如果新 props 属性值存在且值合法(就是转换成 boolean 不为 false),会调用 Object.freeze 函数冻结当前属性值 - 如果新 props 属性值存在且值合法(就是转换成 boolean 不为 false),会调用 Object.freeze 函数冻结当前属性值
- 如果旧 props 也存在 style 属性: - 如果旧 props 也存在 style 属性:
- 开始遍历旧 props style - 开始遍历旧 props style
- 如果出现旧 `props style` 有 style 样式,但是新 `props style` 没有的也就是新增样式的情况,那么会初始化 `styleUpdates` 对象为空(如果在循环旧 `props`已经初始化过就会跳过),并在上边新增当前 style 属性的 key 并赋值空字符串 - 如果出现旧 `props style` 有 style 样式,但是新 `props style` 没有的也就是新增样式的情况,那么会初始化 `styleUpdates` 对象为空(如果已经初始化过就会跳过),并在上边新增当前 style 属性的 key 并赋值空字符串
- 开始遍历新 props style - 开始遍历新 props style
- 如果找到新 props style 存在,但是与旧 props style 不同 - 如果找到新 props style 存在,但是与旧 props style 不同,也就是样式发生修改的情况,那么会初始化 `styleUpdates` 对象为空(如果已经初始化过就会跳过),
## 第二次触发更新和后续触发更新 ## 第二次触发更新和后续触发更新

Loading…
Cancel
Save