对于生命周期Vue给出这样的流程图
Vue完整的生命周期分为三阶段:初始化丶进行中和销毁。
使用组件,得在组件的特定阶段完成特点的任务【特定时间点丶完成特点任务】
分为八个任务:
1.beforeCreate(){}
-组件即将创建
任务:初始化事件,并且为整个生命周期的开始做准备
意义:数据拿到了,真实dom没有拿到
2.created(){}
-组件创建结束
任务:进行数据的注入和数据的反应
意义:数据拿到了,真实DOM没有拿到
3.beforeMount()
-组件即将挂载
任务:判断组件是否有el/template选项,如果有那么使用render函数将template模板中的jsx转换成VDOM对象模型,如果没有,需要我们使用#$mount/outerHTML手动挂载
意义:更多的是内部完成任务,我们外部就不干预了
4.mounted(){}
-组件挂载结束
任务:将VDOM渲染成真实DOM,然后挂载到页面中,这个时候我们在页面中可以看到内容了
意义:操作真实DOM【可以进行第三方库实例化】
5.beforeUpdate(){}
-触发条件:组件的数据发生改变
任务:VDOM重新生成,然后通过diff算法和以前的VDOM对比,生成patch补丁对象【内部进行】
6.updated(){}
-触发条件:组件的数据发生改变
任务:将patch补丁对象进行渲染生成真实dom
意义:可以操作DOM
7.beforeDestroy(){}
-销毁前
8.destroy(){}
-销毁结束