前面已经介绍的都是 Vue 源码的一下细节,这一篇是对前面的一个总结以及梳理。
具体的一下细节,可以看前面的文章。
在执行 new Vue()后,Vue 先初始化数据:
initLifucycle:规格化 option && 初始化属性
initEcents:把父组件在子组件上绑定的自定义事件传递到子组件中
beforeCreated:执行生命周期函数
initJections:读取 jections 如果有的话
initStates:初始化 props、methods、data、computed、watch
initProvide:初始化 provide
created:执行生命周期函数
模板编译:把模板编译成渲染函数
beforeMount:执行生命周期函数
Watcher 渲染函数:当渲染函数里面的数据变化会通知 Watcher 实例更新
mounted:挂载实例 替换 el
到此页面就已经渲染到页面上。接下来就是当数据更新时,更新 DOM,以及卸载实例。