Render渲染(Update阶段)
- 同Mount阶段一样,也是有“递”和“归”两个阶段
"递阶段"
同Mount阶段不同的是,在beginWork办法中会进入
if (current !== null)
这一条件分支,外面会对此次构建的Fibre和上次的Fibre节点进行比拟if ( oldProps !== newProps || hasLegacyContextChanged() || (__DEV__ ? workInProgress.type !== current.type : false) )
- 会给didReceiveUpdate字段赋值,用于断定是否发生变化
- 如果Fiber节点前后无变动,则进入bailoutOnAlreadyFinishedWork办法
- 若没有满足条件,则进入switch语句,依据不同的case条件,执行不同的操作
- "递阶段图解"
“归阶段”
- 后续更新...