生命周期
Vue2 生命周期共有 8 个阶段,分别为:beforeCreate、created、beforeMount、mounted、beforeUpdate、updated、beforeDestroy、destroyed,即创建前 / 后,挂载前 / 后,更新前 / 后,销毁前 / 后。
| 生命周期函数 | 调用时机 | 描述 |
|---|---|---|
| beforeCreate | 组件实例刚被创建,组件属性计算之前 | new Vue() 之后 |
| created | 组件实例已创建,属性已绑定,但 Dom 还未生成 | 数据观测已完成,可访问和更改数据,但更改不会触发 updated |
| beforeMount | 模板编译/挂载之前 | template 模板已导入渲染函数编译,虚拟 DOM 已创建 |
| mounted | 模板编译/挂载之后 | 真实 DOM 挂载完毕,数据完成双向绑定,可访问 DOM 节点 |
| beforeUpdate | 组件更新之前 | 响应式数据发生更新,虚拟 DOM 重新渲染之前 |
| updated | 组件更新之后 | 组件 DOM 已完成更新 |
| beforeDestroy | 组件销毁前调用 | 实例仍可被使用,进行收尾工作 |
| destroyed | 组件销毁后调用 | 组件已被拆解,数据绑定被卸除,监听被移出,子实例也被销毁 |
第一次页面加载会触发Vue的哪几个钩子?
在第一次页面加载时,Vue 会依次触发以下四个钩子:beforeCreate、created、beforeMount、mounted