比如在父组件中编写
<child></child>
其中,Child 组件是自定义子组件。
那么这个 child 节点会在父组件的渲染过程中生成“组件 vnode”,并且在父组件的 patch 过程中,递归初始化 Child 组件,同时把这个 “组件 vnode”当做 parentVnode 传入,然后在 Child 组件的 render 过程中,执行 vm.$vnode = parentVnode,所以可以理解这个 vm.$vnode 就是当前 Child 组件实例的父虚拟 vnode。
如果 vm.$vnode 是 null,说明 vm 没有父虚拟 vnode,那么 vm 就是根实例了。