fix(runtime-dom): support mounting app to svg container (#2929)

fix #2926
This commit is contained in:
HcySunYang
2021-03-02 00:51:32 +08:00
committed by GitHub
parent 1a955e2278
commit 8ffcde2836
5 changed files with 44 additions and 9 deletions

View File

@@ -93,7 +93,8 @@ export interface HydrationRenderer extends Renderer<Element> {
export type RootRenderFunction<HostElement = RendererElement> = (
vnode: VNode | null,
container: HostElement
container: HostElement,
isSVG?: boolean
) => void
export interface RendererOptions<
@@ -2202,13 +2203,13 @@ function baseCreateRenderer(
return hostNextSibling((vnode.anchor || vnode.el)!)
}
const render: RootRenderFunction = (vnode, container) => {
const render: RootRenderFunction = (vnode, container, isSVG) => {
if (vnode == null) {
if (container._vnode) {
unmount(container._vnode, null, null, true)
}
} else {
patch(container._vnode || null, vnode, container)
patch(container._vnode || null, vnode, container, null, null, null, isSVG)
}
flushPostFlushCbs()
container._vnode = vnode