Vue
的生命周期
每个 Vue
实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听、编译模板、将实例挂载到 DOM
并在数据变化时更新 DOM
等。同时在这个过程中也会运行一些叫做生命周期钩子的函数,这给了用户在不同阶段添加自己的代码的机会
通俗地来说 vue
的生命周期:就是 vue
实例从创建到销毁的过程,我将这个过程中的一些关键点抽取出来,简化为下面这个流程图
Vue
的生命周期与钩子函数
vue 2.0
提供了一系列钩子函数,这些函数和生命周期的各个阶段一一对应
钩子函数 | 描述 |
---|---|
beforeCreate | 在实例初始化之后,数据观测(data observer) 和 event/watch事件配置之前被调用 |
created | 在实例创建完成后立即被调用,在这一步实例已经完成了: 数据观测、属性和方法的运算和 event/watch事件的回调, 但是$el属性目前不可见。 |
beforeMount | 在挂载开始之前被调用 |
mounted | 在挂载成功后被调用,el被新创建的vm.$el替换 |
beforeUpdate | 数据更新之前调用 |
update | 数据更新完成时调用,组件dom已经更新 |
activated | 组件被激活时调用 |
deactivated | 组件被移除时调用 |
beforeDestory | 组件销毁前调用 |
destoryed | 组件销毁后调用 |
结合代码理解钩子函数
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>