diff --git a/packages/runtime-core/src/helpers/resolveAssets.ts b/packages/runtime-core/src/helpers/resolveAssets.ts index c0e38772f..03a83337b 100644 --- a/packages/runtime-core/src/helpers/resolveAssets.ts +++ b/packages/runtime-core/src/helpers/resolveAssets.ts @@ -3,6 +3,7 @@ import { currentInstance, Component, FunctionalComponent } from '../component' import { Directive } from '../directives' import { camelize, capitalize, isString } from '@vue/shared' import { warn } from '../warning' +import { VNodeTypes } from '../vnode' const COMPONENTS = 'components' const DIRECTIVES = 'directives' @@ -19,14 +20,12 @@ export const NULL_DYNAMIC_COMPONENT = Symbol() /** * @private */ -export function resolveDynamicComponent( - component: unknown -): Component | string | typeof NULL_DYNAMIC_COMPONENT { +export function resolveDynamicComponent(component: unknown): VNodeTypes { if (isString(component)) { return resolveAsset(COMPONENTS, component, false) || component } else { // invalid types will fallthrough to createVNode and raise warning - return (component as any) || NULL_DYNAMIC_COMPONENT + return (component || NULL_DYNAMIC_COMPONENT) as any } }