MCPcopy Create free account
hub / github.com/microsoft/SandDance / deleteHydratableInstance

Function deleteHydratableInstance

docs/external/js/react-dom.development.js:16574–16602  ·  view source on GitHub ↗
(returnFiber, instance)

Source from the content-addressed store, hash-verified

16572 }
16573
16574 function deleteHydratableInstance(returnFiber, instance) {
16575 {
16576 switch (returnFiber.tag) {
16577 case HostRoot:
16578 didNotHydrateContainerInstance(returnFiber.stateNode.containerInfo, instance);
16579 break;
16580
16581 case HostComponent:
16582 didNotHydrateInstance(returnFiber.type, returnFiber.memoizedProps, returnFiber.stateNode, instance);
16583 break;
16584 }
16585 }
16586
16587 var childToDelete = createFiberFromHostInstanceForDeletion();
16588 childToDelete.stateNode = instance;
16589 childToDelete.return = returnFiber;
16590 childToDelete.effectTag = Deletion; // This might seem like it belongs on progressedFirstDeletion. However,
16591 // these children are not part of the reconciliation list of children.
16592 // Even if we abort and rereconcile the children, that will try to hydrate
16593 // again and the nodes are still in the host tree so these will be
16594 // recreated.
16595
16596 if (returnFiber.lastEffect !== null) {
16597 returnFiber.lastEffect.nextEffect = childToDelete;
16598 returnFiber.lastEffect = childToDelete;
16599 } else {
16600 returnFiber.firstEffect = returnFiber.lastEffect = childToDelete;
16601 }
16602 }
16603
16604 function insertNonHydratedInstance(returnFiber, fiber) {
16605 fiber.effectTag = fiber.effectTag & ~Hydrating | Placement;

Callers 2

popHydrationStateFunction · 0.85

Tested by

no test coverage detected