From 8a2cbadc392bf8953d421f4d57c1e7fecf374b30 Mon Sep 17 00:00:00 2001 From: YuJian Date: Fri, 22 Apr 2022 16:15:56 +0800 Subject: [PATCH] vault backup: 2022-04-22 16:15:55 --- .../React 的深入探索 - commitBeforeMutationEffect.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/React 的源码深入/React 的流程解析 - commit 阶段/React 的深入探索 - commitBeforeMutationEffect.md b/React 的源码深入/React 的流程解析 - commit 阶段/React 的深入探索 - commitBeforeMutationEffect.md index 265e4c0..5641abe 100644 --- a/React 的源码深入/React 的流程解析 - commit 阶段/React 的深入探索 - commitBeforeMutationEffect.md +++ b/React 的源码深入/React 的流程解析 - commit 阶段/React 的深入探索 - commitBeforeMutationEffect.md @@ -3,4 +3,7 @@ before Mutation 阶段主要处理三件事情: 2. 执行 commitBeforMutationEffectOnFiber 函数 3. 判断 Fiber 是否存在 Passive 的标记,有的话就执行 flushPassiveEffects 回调函数 -### commitBeforMutationEffectOnFiber \ No newline at end of file +### commitBeforMutationEffectOnFiber(commitBeforeMutationLifeCycles) +内部会根据 Fiber 的 tag 进入不同的处理逻辑,以 ClassComponents 为例,如果 Fiber 节点上有 Snapshot 的标记,那么会通过 Fiber stateNode 属性取到 ClassComponent 实例执行 getSnapshotBeforeUpdate 这个生命周期函数 + +如果一个 Fiber 存在 Passive 标记,以 FunctonComponent 为例, \ No newline at end of file