vue2和3的生命周期

26 阅读1分钟

🌱 Vue 的生命周期是什么?(标准回答)

Vue 的生命周期是指从组件创建、渲染、更新到销毁的过程,Vue 在这些阶段为我们提供了内置的钩子函数,让我们可以在合适的时机执行相应的逻辑代码。


🔄 Vue 生命周期的主要阶段有哪些?

以 Vue 2 为例,主要分为四大阶段:

  1. 创建阶段(Creation)

    • beforeCreate:组件实例刚被创建,此时数据 (data) 和事件 (methods) 都尚未初始化。
    • created:实例创建完成,data 数据已注入,methods 可用,但 DOM 还未生成。
  2. 挂载阶段(Mounting)

    • beforeMount:模板已编译完成,即将挂载到页面上。
    • mounted:DOM 挂载完成,可以操作真实 DOM,常用于请求数据或使用第三方库。
  3. 更新阶段(Updating)

    • beforeUpdate:响应式数据发生变化,DOM 更新前触发,适合对数据变化做处理。
    • updated:DOM 更新后触发,适合执行依赖 DOM 的逻辑。
  4. 销毁阶段(Unmounting)

    • beforeDestroy:实例销毁前触发,此时可以进行清理操作(如清除定时器、解绑事件)。
    • destroyed:实例销毁后触发,所有绑定的事件监听器和子组件也会被销毁。

✅ Vue 3 生命周期钩子

Vue 3 的生命周期名称略有变化,推荐使用 setup() 中的组合式 API 钩子:

Vue 2Vue 3 (组合式 API)
beforeCreatesetup()
createdsetup()
beforeMountonBeforeMount()
mountedonMounted()
beforeUpdateonBeforeUpdate()
updatedonUpdated()
beforeDestroyonBeforeUnmount()
destroyedonUnmounted()

🎯 面试亮点建议(可加分说法)

  • Vue 的生命周期钩子可用于数据初始化、接口请求、事件监听、DOM 操作、清理资源等。