Vue 生命周期指的是 Vue 实例从创建到销毁的过程,Vue 生命周期包含了多个阶段,每个阶段都有对应的钩子函数可以在特定的时刻执行相应的操作。常用的 Vue 生命周期有以下几个阶段:

beforeCreate

在实例被创建之初,Vue 会先执行 beforeCreate 钩子函数。此时,Vue 实例的数据观测和事件机制都还未初始化,因此在此时不能访问到 data、computed、methods 等属性和方法,也不能访问到 DOM 元素等。

created

在 beforeCreate 钩子函数执行之后,Vue 会执行 created 钩子函数。此时,Vue 实例已经完成了数据观测和事件机制的初始化,但是此时还未挂载到 DOM 上,因此无法访问到 DOM 元素。

beforeMount

在 created 钩子函数执行之后,Vue 会执行 beforeMount 钩子函数。此时,Vue 实例已经完成了模板编译,但是还未将模板渲染成真实的 DOM 元素。

mounted

在 beforeMount 钩子函数执行之后,Vue 会执行 mounted 钩子函数。此时,Vue 实例已经将模板渲染成真实的 DOM 元素,并且挂载到了页面上。mounted 钩子函数是常用的操作 DOM 元素和进行网络请求等操作的时机。

beforeUpdate

当 Vue 实例的数据发生变化时,Vue 会先执行 beforeUpdate 钩子函数。此时,Vue 实例还未重新渲染 DOM 元素。

updated

在 beforeUpdate 钩子函数执行之后,Vue 会执行 updated 钩子函数。此时,Vue 实例已经完成了重新渲染 DOM 元素的操作。

beforeDestroy

在 Vue 实例销毁之前,Vue 会先执行 beforeDestroy 钩子函数。此时,Vue 实例还未销毁,但是可以进行一些清理工作,比如清除定时器、取消事件监听等。

beforeDestroy

在 Vue 实例销毁之前,Vue 会先执行 beforeDestroy 钩子函数。此时,Vue 实例还未销毁,但是可以进行一些清理工作,比如清除定时器、取消事件监听等。

destroyed

在 beforeDestroy 钩子函数执行之后,Vue 会执行 destroyed 钩子函数。此时,Vue 实例已经完成了销毁操作,所有的事件监听和定时器等资源都已经被清除。此时无法再访问 Vue 实例的属性和方法。

以上就是 Vue 常用的生命周期钩子函数,通过这些钩子函数,我们可以在不同的阶段执行相应的操作,从而实现更加灵活和高效的 Vue 应用程序。