1
0
Fork 0
Browse Source

vault backup: 2022-04-20 11:20:31

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

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

@ -122,7 +122,11 @@ createInstance 会调用 createElement 方法创建一个 DOM 实例,并调用
- 当找到 children 属性,会将其转换为字符串和 属性名一起 `push``updatePayload` - 当找到 children 属性,会将其转换为字符串和 属性名一起 `push``updatePayload`
- 当找到除 `dangerouslySetInnerHTML` 之外的特殊属性,会对其进行专属的逻辑 - 当找到除 `dangerouslySetInnerHTML` 之外的特殊属性,会对其进行专属的逻辑
- 最后没有找到以上属性,会进入最后的 else 逻辑:给 `updatePayload` 数组 `push` 进 props 属性名和 对应的属性值,进入下一轮循环 - 最后没有找到以上属性,会进入最后的 else 逻辑:给 `updatePayload` 数组 `push` 进 props 属性名和 对应的属性值,进入下一轮循环
- 当所有的循环结束会pa'm'd
当所有的循环结束会判断 styleUpdates 是否合法(不为 null,且数组长度不为0),合法则进入将调用 validateShorthandPropertyCollisionInDev 函数,传递 styleUpdates 和 新 props style 属性,最后将 `style 字符串``styleUpdates` 推入 `updatePayload`
返回 updatePayload
回到 `updateHostComponent` 函数,将
## 第二次触发更新和后续触发更新 ## 第二次触发更新和后续触发更新

Loading…
Cancel
Save