wip: save

This commit is contained in:
daiwei 2025-03-26 21:09:15 +08:00
parent b474ce0a1e
commit c1547b580c
2 changed files with 8 additions and 6 deletions

View File

@ -25,18 +25,20 @@ import { renderEffect } from '../renderEffect'
import { extend, isArray } from '@vue/shared'
import { EffectScope, pauseTracking, resetTracking } from '@vue/reactivity'
export const teleportStack: TeleportFragment[] = []
export const teleportStack: TeleportFragment[] = __DEV__
? ([] as TeleportFragment[])
: (undefined as any)
export const instanceToTeleportMap: WeakMap<
VaporComponentInstance,
TeleportFragment
> = __DEV__ ? new WeakMap() : (null as any)
> = __DEV__ ? new WeakMap() : (undefined as any)
/**
* dev only.
* when the **root** child component updates, synchronously update
* when the root child component updates, synchronously update
* the TeleportFragment's children and nodes.
*/
export function handleTeleportChildrenHmrReload(
export function handleTeleportRootComponentHmrReload(
instance: VaporComponentInstance,
newInstance: VaporComponentInstance,
): void {

View File

@ -13,7 +13,7 @@ import {
mountComponent,
unmountComponent,
} from './component'
import { handleTeleportChildrenHmrReload } from './components/Teleport'
import { handleTeleportRootComponentHmrReload } from './components/Teleport'
export function hmrRerender(instance: VaporComponentInstance): void {
const normalized = normalizeBlock(instance.block)
@ -55,5 +55,5 @@ export function hmrReload(
)
simpleSetCurrentInstance(prev, instance.parent)
mountComponent(newInstance, parent, anchor)
handleTeleportChildrenHmrReload(instance, newInstance)
handleTeleportRootComponentHmrReload(instance, newInstance)
}