MCPcopy Create free account
hub / github.com/krasimir/react-in-patterns / deleteHydratableInstance

Function deleteHydratableInstance

code/redux/public/app.js:12276–12304  ·  view source on GitHub ↗
(returnFiber, instance)

Source from the content-addressed store, hash-verified

12274 }
12275
12276 function deleteHydratableInstance(returnFiber, instance) {
12277 {
12278 switch (returnFiber.tag) {
12279 case HostRoot:
12280 didNotHydrateContainerInstance(returnFiber.stateNode.containerInfo, instance);
12281 break;
12282 case HostComponent:
12283 didNotHydrateInstance(returnFiber.type, returnFiber.memoizedProps, returnFiber.stateNode, instance);
12284 break;
12285 }
12286 }
12287
12288 var childToDelete = createFiberFromHostInstanceForDeletion();
12289 childToDelete.stateNode = instance;
12290 childToDelete['return'] = returnFiber;
12291 childToDelete.effectTag = Deletion;
12292
12293 // This might seem like it belongs on progressedFirstDeletion. However,
12294 // these children are not part of the reconciliation list of children.
12295 // Even if we abort and rereconcile the children, that will try to hydrate
12296 // again and the nodes are still in the host tree so these will be
12297 // recreated.
12298 if (returnFiber.lastEffect !== null) {
12299 returnFiber.lastEffect.nextEffect = childToDelete;
12300 returnFiber.lastEffect = childToDelete;
12301 } else {
12302 returnFiber.firstEffect = returnFiber.lastEffect = childToDelete;
12303 }
12304 }
12305
12306 function insertNonHydratedInstance(returnFiber, fiber) {
12307 fiber.effectTag |= Placement;

Callers 2

popHydrationStateFunction · 0.70

Tested by

no test coverage detected