常见的 8 种生命周期
1. beforeCreate 阶段:vue 实例的挂载元素 el 和数据对象 data 都是 undefined , 还没有初始化。
2. created 阶段:vue实例的数据对象有 data 了,可以访问里面的数据和方法,未挂载到 dom , el 也还没有。
3. beforeMount 阶段:vue实例的 el 和 data 都初始化了,但是挂载之前是虚拟dom 节点。
4. mounted 阶段:vue实例挂载到真正的 dom 上,就可以通过 dom 获取 dom 节点。
5. beforeUpdate 阶段:响应式数据更新时调用,发生在虚拟dom打补丁之前,适合在更新之前访问现有的dom,比如手动移除已经添加事件的监听器。
6. updated 阶段:虚拟 dom 重新渲染 和 打补丁之后调用,组成新的dom已经更新,切记不要在这个钩子函数中操作数据,防止死循环。
7. beforeDestroy 阶段:实例销毁前调用,实例还可以用,this能获取到实例,常用于 销毁定时器,解绑事件。
8. destroyed 阶段:实例销毁后调用,调用后所有的事件监听器ro都会被移除,所有的子实例都会被销毁。












网友评论