MCPcopy
hub / github.com/vuejs/core / processElement

Function processElement

packages/runtime-core/src/renderer.ts:600–652  ·  packages/runtime-core/src/renderer.ts::processElement
(
    n1: VNode | null,
    n2: VNode,
    container: RendererElement,
    anchor: RendererNode | null,
    parentComponent: ComponentInternalInstance | null,
    parentSuspense: SuspenseBoundary | null,
    namespace: ElementNamespace,
    slotScopeIds: string[] | null,
    optimized: boolean,
  )

Source from the content-addressed store, hash-verified

598 }
599
600 const processElement = (
601 n1: VNode | null,
602 n2: VNode,
603 container: RendererElement,
604 anchor: RendererNode | null,
605 parentComponent: ComponentInternalInstance | null,
606 parentSuspense: SuspenseBoundary | null,
607 namespace: ElementNamespace,
608 slotScopeIds: string[] | null,
609 optimized: boolean,
610 ) => {
611 if (n2.type === class="st">'svg') {
612 namespace = class="st">'svg'
613 } else if (n2.type === class="st">'math') {
614 namespace = class="st">'mathml'
615 }
616
617 if (n1 == null) {
618 mountElement(
619 n2,
620 container,
621 anchor,
622 parentComponent,
623 parentSuspense,
624 namespace,
625 slotScopeIds,
626 optimized,
627 )
628 } else {
629 const customElement =
630 n1.el && (n1.el as ComponentCustomElementInterface)._isVueCE
631 ? (n1.el as ComponentCustomElementInterface)
632 : null
633 try {
634 if (customElement) {
635 customElement._beginPatch()
636 }
637 patchElement(
638 n1,
639 n2,
640 parentComponent,
641 parentSuspense,
642 namespace,
643 slotScopeIds,
644 optimized,
645 )
646 } finally {
647 if (customElement) {
648 customElement._endPatch()
649 }
650 }
651 }
652 }
653
654 const mountElement = (
655 vnode: VNode,

Callers 1

patchFunction · 0.85

Calls 4

mountElementFunction · 0.85
patchElementFunction · 0.85
_beginPatchMethod · 0.65
_endPatchMethod · 0.65

Tested by

no test coverage detected