1.什么是生命周期
从一个vue实例创建、运行、销毁的过程中,伴随着各种各样的事件,这些事件就叫做生命周期。如下图所示:
在整个生命周期阶段中又分为3个大的部分,分别为创建阶段、运行阶段、销毁阶段。
- 创建阶段:
- beforeCreate:实例刚从内存中创建出来,data和methods属性还有初始化完成。
- Created:实例已经在内存中创建完成,data和methods属性也创建完成,可以被调用和使用,但还没开始编译模板。
- beforemounte:已经完成了对模板的编译,但没有挂载在页面上。
- mounted:已经将编译好的模板挂载在了页面上指定的容器中显示。
运行阶段:
beforeUpdate:状态更新之前执行该函数,此时data中的状态值是最新的,但页面上的数据还是旧的,因为还没有将最新的状态值重新渲染到dom节点上。
updated:此时data中的状态值和页面 的数据都是最新的,已经完成了dom节点的重新渲染。
- 销毁阶段:
- beforedestroy:在实例销毁前调用该函数,此时实例还没有被销毁,还可以对实例进行使用。
- destroyed:在实例销毁后调用,实例指示的所有东西会被解绑,所有的监听事件会被移除,所有的子组件也会被销毁。