Vue 的生命周期钩子是一系列在 Vue 实例创建、更新和销毁时触发的函数,它们允许你在不同阶段执行自定义的逻辑。Vue 实例从创建到销毁的过程中,经历了一系列的生命周期阶段,每个阶段都有对应的生命周期钩子函数。
这些生命周期钩子函数提供了灵活的方式来控制和管理 Vue 实例的行为。以下是 Vue 生命周期中常见的生命周期钩子:
-
beforeCreate:在实例初始化之后、数据观测 (data observer) 和事件配置之前被调用。在这个阶段,实例的属性和方法还未初始化。
-
created:在实例已经完成数据观测 (data observer)、属性和方法的运算、watch/event 事件回调等基本配置,但是挂载阶段还未开始。可以在这个阶段执行一些异步操作。
-
beforeMount:在挂载开始之前被调用。相关的 render 函数首次被调用,在这之后会创建虚拟 DOM,并进行首次的 DOM 渲染。
-
mounted:在挂载结束之后调用。实例已经被完全挂载到 DOM 上,可以访问到 DOM 元素,可以进行 DOM 操作或者访问被渲染的数据。
-
beforeUpdate:在数据更新之前被调用,发生在虚拟 DOM 重新渲染和打补丁之前。可以在这里进行状态的比较,或者在更新之前进行一些准备工作。
-
updated:在数据更改导致的虚拟 DOM 重新渲染和打补丁之后调用。组件 DOM 已更新,可以执行依赖于 DOM 的操作。
-
beforeDestroy:在实例销毁之前调用。在这个阶段,实例仍然完全可用,可以执行清理工作,如清除定时器、取消事件监听等。
-
destroyed:在实例销毁之后调用。这个阶段,实例所有的绑定和监听都会被解绑,对应的子实例也会被销毁。
这些生命周期钩子允许你在不同阶段执行自定义的逻辑,比如在数据更新前后执行特定操作、在组件销毁前清理资源等。深入了解生命周期可以帮助你更好地理解 Vue 组件的创建、更新和销毁过程,以及何时执行特定的操作。
Was this helpful?
0 / 0