scheduleRetryEffect() — react Function Reference
Architecture documentation for the scheduleRetryEffect() function in ReactFiberCompleteWork.js from the react codebase.
Entity Profile
Dependency Diagram
graph TD 54a4a170_0e5d_aa94_d464_18bbf1d94d89["scheduleRetryEffect()"] 6b05669d_2f09_63a5_e79f_0afc195f25a3["ReactFiberCompleteWork.js"] 54a4a170_0e5d_aa94_d464_18bbf1d94d89 -->|defined in| 6b05669d_2f09_63a5_e79f_0afc195f25a3 0b8db832_87fd_e560_8aa8_e2b319c81626["completeWork()"] 0b8db832_87fd_e560_8aa8_e2b319c81626 -->|calls| 54a4a170_0e5d_aa94_d464_18bbf1d94d89 style 54a4a170_0e5d_aa94_d464_18bbf1d94d89 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/react-reconciler/src/ReactFiberCompleteWork.js lines 630–662
function scheduleRetryEffect(
workInProgress: Fiber,
retryQueue: RetryQueue | null,
) {
const wakeables = retryQueue;
if (wakeables !== null) {
// Schedule an effect to attach a retry listener to the promise.
// TODO: Move to passive phase
workInProgress.flags |= Update;
}
// Check if we need to schedule an immediate retry. This should happen
// whenever we unwind a suspended tree without fully rendering its siblings;
// we need to begin the retry so we can start prerendering them.
//
// We also use this mechanism for Suspensey Resources (e.g. stylesheets),
// because those don't actually block the render phase, only the commit phase.
// So we can start rendering even before the resources are ready.
if (workInProgress.flags & ScheduleRetry) {
const retryLane =
// TODO: This check should probably be moved into claimNextRetryLane
// I also suspect that we need some further consolidation of offscreen
// and retry lanes.
workInProgress.tag !== OffscreenComponent
? claimNextRetryLane()
: OffscreenLane;
workInProgress.lanes = mergeLanes(workInProgress.lanes, retryLane);
// Track the lanes that have been scheduled for an immediate retry so that
// we can mark them as suspended upon committing the root.
markSpawnedRetryLane(retryLane);
}
}
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does scheduleRetryEffect() do?
scheduleRetryEffect() is a function in the react codebase, defined in packages/react-reconciler/src/ReactFiberCompleteWork.js.
Where is scheduleRetryEffect() defined?
scheduleRetryEffect() is defined in packages/react-reconciler/src/ReactFiberCompleteWork.js at line 630.
What calls scheduleRetryEffect()?
scheduleRetryEffect() is called by 1 function(s): completeWork.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free