removeIdentifiers(exp: ExpressionNode | string): void
hoist(exp: string | JSChildNode | ArrayExpression): SimpleExpressionNode
cache<T extends JSChildNode>(exp: T, isVNode?: boolean): CacheExpression | T
- constantCache: Map<TemplateChildNode, ConstantTypes>
+ constantCache: WeakMap<TemplateChildNode, ConstantTypes>
// 2.x Compat only
filters?: Set<string>
directives: new Set(),
hoists: [],
imports: [],
- constantCache: new Map(),
+ constantCache: new WeakMap(),
temps: 0,
cached: 0,
identifiers: Object.create(null),
})
}
- const installedPlugins = new Set()
+ const installedPlugins = new WeakSet()
let isMounted = false
reject?: (reason?: any) => void
) => LegacyAsyncReturnValue | undefined
-const normalizedAsyncComponentMap = new Map<LegacyAsyncComponent, Component>()
+const normalizedAsyncComponentMap = new WeakMap<
+ LegacyAsyncComponent,
+ Component
+>()
export function convertLegacyAsyncComponent(comp: LegacyAsyncComponent) {
if (normalizedAsyncComponentMap.has(comp)) {
import { getCompatListeners } from './instanceListeners'
import { compatH } from './renderFn'
-const normalizedFunctionalComponentMap = new Map<
+const normalizedFunctionalComponentMap = new WeakMap<
ComponentOptions,
FunctionalComponent
>()
-
export const legacySlotProxyHandlers: ProxyHandler<InternalSlots> = {
get(target, key: string) {
const slot = target[key]