fix(ssr): ensure app can be unmounted when created with createSSRApp() (#5992)

fix #5990
This commit is contained in:
Thorsten Lünborg
2022-05-24 14:30:40 +02:00
committed by GitHub
parent 160d5df34a
commit d4d3319c1b
2 changed files with 33 additions and 2 deletions

View File

@@ -27,7 +27,7 @@ import { isAsyncWrapper } from './apiAsyncComponent'
export type RootHydrateFunction = (
vnode: VNode<Node, Element>,
container: Element | ShadowRoot
container: (Element | ShadowRoot) & { _vnode?: VNode }
) => void
const enum DOMNodeTypes {
@@ -75,11 +75,13 @@ export function createHydrationFunctions(
)
patch(null, vnode, container)
flushPostFlushCbs()
container._vnode = vnode
return
}
hasMismatch = false
hydrateNode(container.firstChild!, vnode, null, null, null)
flushPostFlushCbs()
container._vnode = vnode
if (hasMismatch && !__TEST__) {
// this error should show up in production
console.error(`Hydration completed but contains mismatches.`)