当前位置: 首页 > news >正文

Vue3 的生命周期:从 Composition API 视角看

在这里插入图片描述

🤍 前端开发工程师、技术日更博主、已过CET6
🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1
🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》、《前端求职突破计划》
🍚 蓝桥云课签约作者、上架课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入门到实战全面掌握 uni-app》

在 Vue3 中,生命周期钩子函数的用法有所变化,以适应 Composition API 的新特性。生命周期钩子现在作为 on 前缀的函数提供,例如 onMountedonUpdated 等。

生命周期钩子

以下是 Vue3 中可用的主要生命周期钩子及其对应的 Composition API 函数:

  • 创建阶段

    • beforeCreate -> 使用 setup() 替代
    • created -> 使用 setup() 替代
  • 挂载阶段

    • beforeMount -> onBeforeMount
    • mounted -> onMounted
  • 更新阶段

    • beforeUpdate -> onBeforeUpdate
    • updated -> onUpdated
  • 卸载阶段

    • beforeUnmount (Vue3 中替代了 beforeDestroy)
    • unmounted (Vue3 中替代了 destroyed)
  • 错误处理

    • errorCaptured -> onErrorCaptured

生命周期钩子的使用示例

<template>
<div>{{ message }}</div>
</template><script>
import { ref, onMounted, onUpdated, onBeforeUnmount } from 'vue';export default {
setup() {
const message = ref('Hello, Vue3!');// 组件挂载后执行
onMounted(() => {
console.log('Component is mounted!');
});// 组件更新后执行
onUpdated(() => {
console.log('Component is updated!');
});// 组件卸载前执行
onBeforeUnmount(() => {
console.log('Component is about to be unmounted!');
});return { message };
}
};
</script>

在 Vue3 中,生命周期钩子函数通常在 setup 函数内部调用,并且不需要像 Vue2 那样在选项对象中注册。这些钩子函数提供了一种在组件的不同阶段执行代码的方式,例如初始化数据、设置订阅、清理资源等。

注意,setup 函数本身在组件实例化时立即执行,相当于 Vue2 中的 beforeCreatecreated 钩子的结合。因此,在 setup 函数中进行的操作通常对应于这两个生命周期阶段。

http://www.lqws.cn/news/463753.html

相关文章:

  • DeepEP开源MoE模型分布式通信库
  • Linux运维新人自用笔记(Ubuntu磁盘命名规则、新磁盘分区、主流文件系统类型、mkfs命令格式化文件系统、临时和永久挂载、挂载报错、dd指令)
  • 2.7 Python方法调用机制解析:从描述符到字节码执行
  • 5.2 Qt Creator 使用FFmpeg库
  • win环境使用openssl创建p12证书
  • 微前端MFE:(React 与 Angular)框架之间的通信方式
  • word-spacing 属性
  • Kubernetes控制平面组件:Kubelet详解(八):容器存储接口 CSI
  • C++链表的虚拟头节点
  • 课程目录:腾讯混元3D × Unity3D全流程开发
  • Python pytesseract【OCR引擎库】 简介
  • 【JVM|内存结构】第一天
  • 【论文笔记】【强化微调】TinyLLaVA-Video-R1:小参数模型也能视频推理
  • Spring-MyBatis基本操作
  • linux weston flutter remote desktop
  • 2025年- H83-Lc191--139.单词拆分(动态规划)--Java版
  • JF - 600MT称重变送器与Modbus TCP转Profibus DP网关通讯案例
  • MCPServer编程与CLINE配置调用MCP
  • 项目练习:Jaspersoft Studio制作PDF报表时,detail和column footer之间存在很大的空白区
  • SkyWalking探针技术监控Spring Boot微服务——部署与应用详解
  • Laravel 项目中图片上传后无法访问的问题
  • 进程间通信——管道
  • 【Qt开发】网络运用
  • “氢键本征型材料 + 柔性电容应变片”方案分析
  • NW849NX721美光固态闪存NX745NX751
  • C++中的指针与引用
  • ProtoBuf:proto3 语法详解
  • 三甲医院AI医疗样本数据集分类与收集全流程节点分析(下)
  • 【appium】2.初始连接脚本配置
  • React扩展知识点