fix: parent chain error when root is functional
This commit is contained in:
parent
832d715afe
commit
01bb8d1894
@ -77,18 +77,17 @@ export function initializeComponentInstance(instance: ComponentInstance) {
|
||||
// parent chain management
|
||||
if (currentContextVNode !== null) {
|
||||
// locate first non-functional parent
|
||||
while (
|
||||
currentContextVNode !== null &&
|
||||
currentContextVNode.flags & VNodeFlags.COMPONENT_FUNCTIONAL &&
|
||||
currentContextVNode.contextVNode !== null
|
||||
) {
|
||||
currentContextVNode = currentContextVNode.contextVNode as any
|
||||
}
|
||||
while (currentContextVNode !== null) {
|
||||
if ((currentContextVNode.flags & VNodeFlags.COMPONENT_STATEFUL) > 0) {
|
||||
const parentComponent = (currentContextVNode as VNode)
|
||||
.children as ComponentInstance
|
||||
instance.$parent = parentComponent.$proxy
|
||||
instance.$root = parentComponent.$root
|
||||
parentComponent.$children.push(proxy)
|
||||
break
|
||||
}
|
||||
currentContextVNode = currentContextVNode.contextVNode
|
||||
}
|
||||
} else {
|
||||
instance.$root = proxy
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user