fix(ssr): fix hydration error when transition contains comment children
fix #5351
This commit is contained in:
		
							parent
							
								
									aed10c5072
								
							
						
					
					
						commit
						3705b3b46a
					
				@ -35,7 +35,8 @@ import {
 | 
				
			|||||||
  CREATE_VNODE,
 | 
					  CREATE_VNODE,
 | 
				
			||||||
  CallExpression,
 | 
					  CallExpression,
 | 
				
			||||||
  JSChildNode,
 | 
					  JSChildNode,
 | 
				
			||||||
  RESOLVE_DYNAMIC_COMPONENT
 | 
					  RESOLVE_DYNAMIC_COMPONENT,
 | 
				
			||||||
 | 
					  TRANSITION
 | 
				
			||||||
} from '@vue/compiler-dom'
 | 
					} from '@vue/compiler-dom'
 | 
				
			||||||
import { SSR_RENDER_COMPONENT, SSR_RENDER_VNODE } from '../runtimeHelpers'
 | 
					import { SSR_RENDER_COMPONENT, SSR_RENDER_VNODE } from '../runtimeHelpers'
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
@ -213,6 +214,10 @@ export function ssrProcessComponent(
 | 
				
			|||||||
      if ((parent as WIPSlotEntry).type === WIP_SLOT) {
 | 
					      if ((parent as WIPSlotEntry).type === WIP_SLOT) {
 | 
				
			||||||
        context.pushStringPart(``)
 | 
					        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)
 | 
					      processChildren(node, context)
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  } else {
 | 
					  } else {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user