# Vue 的生命周期
| 名称 | 描述 |
|---|---|
| beforeCreate | 实例创建之前,无法再当前生命周期中访问当前实例(this)。 |
| created | 实例创建完成,但是DOM未生成。 |
| beforeMount | 模板编译完成,页面元素还未替换成创建的DOM,页面只是之前写的模板字符串。 |
| mounted | 实例与DOM全都完成创建。 |
| beforeUpdate | 数据变化发生变化,但是界面还未更新(Vue异步更新DOM)。 |
| updated | 页面与数据完成同步。 |
| beforeDestroy | 进去销毁之前。 |
| destroyed | 实例完全销毁。 |
| activated | 使用keep-alive会触发当前状态,每次页面被激活时会触发。他只会发生在主页面,页面下的组件时不会被触发的 |
| deactivated | 使用keep-alive会触发当前状态,切换到其他页面会触发。 |
父子组件的生命周期
parent:beforeCreate -> parent:created -> parent:beforeMount -> child:beforeCreate -> child:created -> child:beforeMount -> child:mounted ->parent:mounted
# 生命周期钩子函数
// ...
this.$on('hook:beforeDestroy', () => {
// ...
})
this.$once('hook:created', () => {
// ...
})