recursivelyTraverseReconnectPassiveEffects() — react Function Reference
Architecture documentation for the recursivelyTraverseReconnectPassiveEffects() function in ReactFiberCommitWork.js from the react codebase.
Entity Profile
Dependency Diagram
graph TD ea4de162_c0d1_f2e2_cc55_bbca4c7974d7["recursivelyTraverseReconnectPassiveEffects()"] e0fbfbd5_47b0_a489_0b36_bbfad9245544["ReactFiberCommitWork.js"] ea4de162_c0d1_f2e2_cc55_bbca4c7974d7 -->|defined in| e0fbfbd5_47b0_a489_0b36_bbfad9245544 07f3c6d9_2fce_51ae_4408_e0d4ab7359a1["commitPassiveMountOnFiber()"] 07f3c6d9_2fce_51ae_4408_e0d4ab7359a1 -->|calls| ea4de162_c0d1_f2e2_cc55_bbca4c7974d7 c3c0c008_f543_54ba_5f17_334454e50793["reconnectPassiveEffects()"] c3c0c008_f543_54ba_5f17_334454e50793 -->|calls| ea4de162_c0d1_f2e2_cc55_bbca4c7974d7 c3c0c008_f543_54ba_5f17_334454e50793["reconnectPassiveEffects()"] ea4de162_c0d1_f2e2_cc55_bbca4c7974d7 -->|calls| c3c0c008_f543_54ba_5f17_334454e50793 style ea4de162_c0d1_f2e2_cc55_bbca4c7974d7 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/react-reconciler/src/ReactFiberCommitWork.js lines 4184–4232
function recursivelyTraverseReconnectPassiveEffects(
finishedRoot: FiberRoot,
parentFiber: Fiber,
committedLanes: Lanes,
committedTransitions: Array<Transition> | null,
includeWorkInProgressEffects: boolean,
endTime: number,
) {
// This function visits both newly finished work and nodes that were re-used
// from a previously committed tree. We cannot check non-static flags if the
// node was reused.
const childShouldIncludeWorkInProgressEffects =
includeWorkInProgressEffects &&
((parentFiber.subtreeFlags & PassiveMask) !== NoFlags ||
(enableProfilerTimer &&
enableComponentPerformanceTrack &&
parentFiber.actualDuration !== 0 &&
(parentFiber.alternate === null ||
parentFiber.alternate.child !== parentFiber.child)));
// TODO (Offscreen) Check: flags & (RefStatic | LayoutStatic)
let child = parentFiber.child;
while (child !== null) {
if (enableProfilerTimer && enableComponentPerformanceTrack) {
const nextSibling = child.sibling;
reconnectPassiveEffects(
finishedRoot,
child,
committedLanes,
committedTransitions,
childShouldIncludeWorkInProgressEffects,
nextSibling !== null
? ((nextSibling.actualStartTime: any): number)
: endTime,
);
child = nextSibling;
} else {
reconnectPassiveEffects(
finishedRoot,
child,
committedLanes,
committedTransitions,
childShouldIncludeWorkInProgressEffects,
endTime,
);
child = child.sibling;
}
}
}
Domain
Subdomains
Source
Frequently Asked Questions
What does recursivelyTraverseReconnectPassiveEffects() do?
recursivelyTraverseReconnectPassiveEffects() is a function in the react codebase, defined in packages/react-reconciler/src/ReactFiberCommitWork.js.
Where is recursivelyTraverseReconnectPassiveEffects() defined?
recursivelyTraverseReconnectPassiveEffects() is defined in packages/react-reconciler/src/ReactFiberCommitWork.js at line 4184.
What does recursivelyTraverseReconnectPassiveEffects() call?
recursivelyTraverseReconnectPassiveEffects() calls 1 function(s): reconnectPassiveEffects.
What calls recursivelyTraverseReconnectPassiveEffects()?
recursivelyTraverseReconnectPassiveEffects() is called by 2 function(s): commitPassiveMountOnFiber, reconnectPassiveEffects.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free