diff --git a/packages/compiler-ssr/src/transforms/ssrTransformComponent.ts b/packages/compiler-ssr/src/transforms/ssrTransformComponent.ts index 4c3a961c..df190c76 100644 --- a/packages/compiler-ssr/src/transforms/ssrTransformComponent.ts +++ b/packages/compiler-ssr/src/transforms/ssrTransformComponent.ts @@ -35,7 +35,8 @@ import { CREATE_VNODE, CallExpression, JSChildNode, - RESOLVE_DYNAMIC_COMPONENT + RESOLVE_DYNAMIC_COMPONENT, + TRANSITION } from '@vue/compiler-dom' import { SSR_RENDER_COMPONENT, SSR_RENDER_VNODE } from '../runtimeHelpers' import { @@ -213,6 +214,10 @@ export function ssrProcessComponent( if ((parent as WIPSlotEntry).type === WIP_SLOT) { context.pushStringPart(``) } + // #5351: filter out comment children inside transition + if (component === TRANSITION) { + node.children = node.children.filter(c => c.type !== NodeTypes.COMMENT) + } processChildren(node, context) } } else {