一文详细了解Vue 3.0中的onMounted和onUnmounted钩子函数

 更新时间:2024年10月11日 10:31:13   作者:和烨  
Vue3.0引入了新的组件生命周期钩子函数onMounted和onUnmounted,分别用于组件挂载后和卸载前的操作,这些钩子函数为开发者提供了更多灵活性,文中通过代码介绍的非常详细,需要的朋友可以参考下

一、什么是onMounted和onUnmounted?

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

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

二、如何使用onMounted和onUnmounted?

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

1、使用onMounted

<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

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

到此这篇关于Vue中的onMounted和onUnmounted钩子函数的文章就介绍到这了,更多相关Vue3中onMounted和onUnmounted钩子函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 通过vue手动封装on、emit、off的代码详解

    通过vue手动封装on、emit、off的代码详解

    这篇文章主要介绍了通过vue手动封装on,emit,off的代码详解,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-05-05
  • vue构建单页面应用实战

    vue构建单页面应用实战

    本篇文章主要介绍了vue构建单页面应用实战,使用 SPA,没有页面切换,就没有白屏阻塞,可以大大提高 H5 的性能,达到接近原生的流畅体验。
    2017-04-04
  • Vue Element如何获取select选择框选择的value和label

    Vue Element如何获取select选择框选择的value和label

    文章介绍了两种使用Vue.js和ElementUI获取select选择框值的方法:一种是使用watch监听selectedValue的变化,另一种是使用@change事件,两种方法都能实现获取选择的value和label
    2025-01-01
  • Vue实现一个无限加载列表功能

    Vue实现一个无限加载列表功能

    这篇文章主要介绍了Vue实现一个无限加载列表功能,需要的朋友可以参考下
    2018-11-11
  • 详解vuejs中执行npm run dev出现页面cannot GET/问题

    详解vuejs中执行npm run dev出现页面cannot GET/问题

    这篇文章主要介绍了详解vuejs中执行npm run dev出现页面cannot GET/问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • 简单了解前端渐进式框架VUE

    简单了解前端渐进式框架VUE

    这篇文章主要介绍了前端渐进式框架VUE的相关资料,文中讲解的非常细致,帮助大家开始学习VUE,感兴趣的朋友可以了解下
    2020-07-07
  • el-menu实现横向溢出截取的示例代码

    el-menu实现横向溢出截取的示例代码

    在进行vue开发的时候,我们不可避免会使用到导航菜单,element方便的为我们提供了导航菜单组件,下面这篇文章主要给大家介绍了关于el-menu实现横向溢出截取的相关资料,需要的朋友可以参考下
    2022-06-06
  • Vue非单文件组件使用详解

    Vue非单文件组件使用详解

    Vue单文件组件通常使用.vue文件扩展名,下面这篇文章主要给大家介绍了关于Vue非单文件组件使用的相关资料,文中通过图文以及实例代码介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • vue3使用videojs播放m3u8格式视频教程

    vue3使用videojs播放m3u8格式视频教程

    m3u8是一种基于HTTP Live Streaming(HLS)文件视频格式,它主要是存放整个视频的基本信息和分片(Segment)组成,下面这篇文章主要给大家介绍了关于vue3使用videojs播放m3u8格式视频的相关资料,需要的朋友可以参考下
    2023-06-06
  • 浅谈Vue入门需掌握的知识

    浅谈Vue入门需掌握的知识

    这篇文章主要介绍了浅谈Vue入门需掌握的知识,感兴趣的同学参考下
    2021-04-04

最新评论