学习Vue 3.0中的onMounted和onUnmounted钩子函数

学习Vue 3.0中的onMounted和onUnmounted钩子函数


一、什么是onMounted和onUnmounted?

Vue 3.0带来了许多令人兴奋的新特性和改进,其中包括更强大的组合式API。在这篇文章中,我们将重点介绍Vue 3.0中两个重要的组件生命周期钩子函数:onMounted和onUnmounted。这两个钩子函数可以帮助我们更好地管理组件的生命周期和行为。

onMounted和onUnmounted是Vue 3.0中的两个新的组件生命周期钩子函数。它们分别在组件挂载后和组件卸载前执行。这些钩子函数可以用来执行一些特定的逻辑,例如初始化数据、订阅事件、启动定时器等。

二、如何使用onMounted和onUnmounted?

让我们来看看如何在Vue 3.0中使用这两个钩子函数。

1、使用onMounted

vue 复制代码
<template>
  <div>
    <h1>{{ message }}</h1>
  </div>
</template>

<script setup>
import { ref, onMounted } from 'vue'

const message = ref('Hello, Vue 3!')

onMounted(() => {
  console.log('组件已挂载')
  // 在组件挂载后执行的逻辑,例如初始化数据、订阅事件等
})
</script>

在上面的例子中,我们使用onMounted钩子函数在组件挂载后执行了一些逻辑,这里只是简单地打印了一条消息到控制台。你可以在这个钩子函数中执行任何需要在组件挂载后立即执行的逻辑。

2、使用onUnmounted

vue 复制代码
<script setup>
import { ref, onUnmounted } from 'vue'

const timerId = ref(null)

onUnmounted(() => {
  console.log('组件将被卸载')
  // 在组件卸载前执行的逻辑,例如清除定时器、取消订阅等
  if (timerId.value) {
    clearInterval(timerId.value)
  }
})

const startTimer = () => {
  timerId.value = setInterval(() => {
    console.log('定时器执行中')
  }, 1000)
}
</script>

在上面的例子中,我们使用onUnmounted钩子函数在组件即将被卸载前执行了一些逻辑,这里清除了一个定时器。你可以在这个钩子函数中执行任何需要在组件卸载前执行的清理操作,例如取消订阅、关闭WebSocket连接等。

三、总结

在本文中,我们学习了Vue 3.0中的onMounted和onUnmounted钩子函数,并看了一些简单的示例。这两个钩子函数为我们提供了更加灵活和强大的组件生命周期管理方式,使得我们能够更好地控制组件的行为和资源的释放。希望本文能够帮助你更好地理解和应用Vue 3.0中的组合式API。

相关推荐
云浪2 小时前
Go 并发实战:从零实现一个高并发安全的任务调度器
javascript·后端·go
OpsEye10 小时前
大模型账单对账难:不同厂商 Token 统计口径差异怎么处理
javascript·ai编程
全栈项目管理程序猿10 小时前
ArcGIS JS 基础教程(32):体元系列 - VoxelSlice 体元切片
前端·javascript
流烟默12 小时前
SSE 实战:在 SpringBoot + Vue 项目中零依赖实现轻量级实时消息推送
vue.js·spring boot·后端·sse
xier_ran12 小时前
【infra之路】AI 编译器学习笔记(十三):AI 编译器全景——TVM、XLA、IREE 与其他
人工智能·笔记·学习
连山齐名12 小时前
ai应用开发的学习笔记
服务器·笔记·学习
Hilaku12 小时前
AI 流式输出都用 SSE,什么时候必须换 WebSocket?
前端·javascript·程序员
奇牙coding13 小时前
Codex CLI 升级后多文件编辑静默失效:config.yaml 枚举变更排查与修复指南
java·前端·javascript·ai
执子念的飞鱼13 小时前
纯前端预览 275 种文件格式是怎么做到的
前端·vue.js·react.js
xier_ran13 小时前
【infra之路】AI 编译器学习笔记(十四):为什么要 tiling,以及矩阵计算单元的“固定“
人工智能·笔记·学习