vue3 组件挂载与更新过程

vue 版本:3.0.2patch
patch 根据 vnode 的 type 与 shapeFlag 调用相应的 processXXX 方法,static、teleport、suspence 类型的除外。
上图使用组件挂载,所以调用了 processComponent 方法。
type使用Symbol标识,有以下几种类型:Symbol(Text)Symbol(Comment)Symbol(Static),调用mountStaticNode方法Symbol(Fragment)
shapeFlag使用数字标识,有以下几种类型:ELEMENTCOMPONENTTELEPORT, 调用该类型组件的process方法SUSPENSE, 调用该类型组件的process方法
processComponent
processComponent 的第一个、第二个参数为旧节点、新节点。
如果旧节点不存在,说明为首次挂载,则会调用 mountComponent 方法,否则调用 updateComponent 方法。
setup
setup 中是用户编写的一些状态逻辑,这里可以对数据进行响应式处理。