Vue3 的生命周期钩子

admin9个月前 (06-04)it知识617

Vue3 的生命周期钩子函数是组件从创建到销毁过程中各个阶段的关键节点,以下是主要特点和使用方式:

一、核心生命周期钩子(Composition API)

setup()

替代了 Vue2 的 beforeCreate 和 created 钩子

是组合式 API 的入口点,在此初始化响应式数据

挂载阶段

onBeforeMount:DOM 挂载前触发,此时模板已编译但未渲染

onMounted:组件挂载完成后调用,可访问 DOM 元素

更新阶段

onBeforeUpdate:数据变化后,DOM 更新前执行

onUpdated:DOM 更新完成后触发

卸载阶段

onBeforeUnmount:组件卸载前调用(原 Vue2 的 beforeDestroy)

onUnmounted:组件卸载后执行清理操作

二、父子组件执行顺序

挂载阶段:

父 setup → 父 onBeforeMount → 子 setup → 子 onBeforeMount → 子 onMounted → 父 onMounted

更新阶段:

父 onBeforeUpdate → 子 onBeforeUpdate → 子 onUpdated → 父 onUpdated

卸载阶段:

父 onBeforeUnmount → 子 onBeforeUnmount → 子 onUnmounted → 父 onUnmounted

三、注意事项

在 setup() 中使用生命周期需要显式导入

服务端渲染时 beforeMount/mounted 等钩子不会执行

避免在 updated 钩子中修改状态,可能导致无限循环

四、与 Vue2 的主要区别

钩子名称变化:destroyed → unmounted

新增调试钩子:onRenderTracked/onRenderTriggered

组合式 API 提供了更灵活的生命周期管理方式


标签: 分享IT知识

相关文章

收集需求

在一个阳光明媚的周末,一家软件开发公司决定为他们的产品添加新功能。产品经理决定召集团队成员进行一次需求收集会议,以便更好地了解用户需求并为未来的开发做好准备。会议当天,团队成员聚集在会议室,桌上放着一...

暴风雨

暴风雨来临之前,天空中弥漫着一股压抑的气息。乌云密布,仿佛覆盖着一片灰暗的帷幕,将整个天地都笼罩在一片阴沉的氛围中。狂风大作,吹拂着路上的尘土和枝叶,让人感到一阵阵的凉意。突然,一声炸雷打破了寂静,紧...

南山经

南山经之首曰鹊山。其首曰招瑶之山,临于西海之上。多桂多金玉。有草焉,其状如韭而青华,其名曰祝馀,食之不饥。有木焉,其状如榖而黑理,其华四照。其名曰迷榖,佩之不迷。有兽焉,其状如禺而白耳,伏行人走,其名...

为政篇--论语

子曰:“为政以德,譬如北辰,居其所而众星共之。”  子曰:“《诗》三百,一言以蔽之,曰:‘思无邪’。”  子曰:“道之以政,齐之以刑,民免而无耻。道之以德,齐之以礼,有耻且格。”  子曰:“吾十有五而...

javascript 数据处理

JavaScript 提供了丰富的数据处理能力,涵盖数组、字符串、对象等核心数据结构的操作,以及高效的数据转换、存储和传输方法。以下是关键处理技巧和场景总结:‌一、数组处理‌‌遍历与转换‌map():...

Flutter有哪些常用的UI组件?

Flutter 提供了丰富且强大的 UI 组件,这些组件可以帮助开发者快速构建美观且功能丰富的用户界面。以下是一些 Flutter 中常用的 UI 组件,按照功能和用途进行了分类归纳:基础组件‌Con...