首页 > 其他分享 >vue2与vue3生命周期钩子的不同

vue2与vue3生命周期钩子的不同

时间:2025-01-06 18:57:50浏览次数:3  
标签:调用 实例 钩子 Vue vue2 vue3 组件 挂载

Vue 2 的生命周期钩子
在 Vue 2 中,常用的生命周期钩子包括:

created:在实例创建完成后被调用。这时,实例已完成数据观测 (data observer),属性和方法的运算,watch/event 事件回调。但是,挂载阶段还没开始,$el 属性目前不可见。
mounted:在挂载完成后被调用。这时,组件已经插入到 DOM 中,可以访问到 $el 属性。
beforeDestroy:在实例销毁之前调用。在这一步,实例仍然完全可用。
destroyed:在实例销毁后调用。调用后,所有的事件监听器会被移除,所有的子实例也会被销毁。
Vue 3 的生命周期钩子
Vue 3 引入了一些新的命名,并且在组合式 API (setup 函数) 中使用了不同的钩子函数:

onBeforeMount:在挂载开始之前被调用。
onMounted:在挂载完成后被调用。
onBeforeUnmount:在卸载组件实例之前调用。
onUnmounted:在卸载组件实例之后调用。
具体差异
created vs onMounted:

Vue 2:created 钩子在实例创建完成后被调用,但此时组件还没有被挂载到 DOM 上。
Vue 3:onMounted 钩子在组件挂载完成后被调用,此时组件已经被插入到 DOM 中。
beforeDestroy vs onBeforeUnmount:

Vue 2:beforeDestroy 在组件即将被销毁前调用。
Vue 3:onBeforeUnmount 在组件即将被卸载前调用。
destroyed vs onUnmounted:

Vue 2:destroyed 在组件被销毁后调用。
Vue 3:onUnmounted 在组件被卸载后调用。

标签:调用,实例,钩子,Vue,vue2,vue3,组件,挂载
From: https://blog.csdn.net/modaoshi51991/article/details/144968731

相关文章

  • 前端学习openLayers配合vue3(修改地图样式)
    这一块的东西非常简单,基于上一步的继续操作关键代码,当然对应的对象需要进行相关的引入//填充颜色style:newStyle({fill:newFill({color:"rgba(255,0,0,0.5)",})})效果 完整代码<scriptsetup>i......
  • vue3 useTemplateRef()返回null
    新版写法(Vue3.5以后)在Vue3.5开始,引入了useTemplateRef(),文档中是这么说的:当ref在v-for内部使用时,相应的ref应包含一个Array值,该值将在mount之后填充元素:<scriptsetup>import{ref,useTemplateRef,onMounted}from'vue'constlist=ref([/*...*/])......
  • vue2大屏适配,公共组件,copy即用,超详细教程!
    1.创建内容包裹组件(封装公共组件)scale-screen.vue<!--大屏自适应容器组件--><template><divclass="screen-wrapper"ref="screenWrapper":style="wrapperStyle"><slot></slot></div></template><sc......
  • vue3版本下element-plus和antd-vue选哪个更好一些?.240109
    Vue3发布后,各家第三方库开始陆续重构并支持Vue3,国内两大知名框架ElementPlus和AntDesignVue也相续发布新版支持Vue3。到底应该怎么选择呢?ElementPlus和AntDesignVue3都已不在支持IE了,并不是他们自己放弃了IE而是Vue3本身已经放弃了IE。如果想在低版......
  • vue3-openlayers基础知识简介
    vue3-openlayers基础知识简介OpenLayers3Primeropenlayers6:入门基础(一)openlayers入门教程一、基础概念介绍地图(Map)OpenLayers的核心部件是Map(ol.Map)。它被呈现到对象target容器(例如,网页上的div元素)。所有地图的属性可以在构造时进行配置。ol/Map类是OpenLayers......
  • 剖析Vue2内部运行机制
    Vue.js运行机制全局概览全局概览这一节笔者将为大家介绍一下Vue.js内部的整个流程,希望能让大家对全局有一个整体的印象,然后我们再来逐个模块进行讲解。从来没有了解过Vue.js实现的同学可能会对一些内容感到疑惑,这是很正常的,这一节的目的主要是为了让大家对整个流程有一个大......
  • vue2把后端响应数据保存ex表格
    在Vue中实现点击按钮将后端响应的数据导出为.xlsx文件,可以使用axios进行数据请求,并结合xlsx和file-saver库完成文件的生成和下载。以下是完整实现步骤:1.安装依赖库运行以下命令安装所需的库:npminstallxlsxfile-saveraxios2.创建导出功能组件代码示例<te......
  • 在vue3中setup是如何获得组件实例的?
    在Vue3中,setup函数是在组件初始化阶段调用的,它提供了一个响应式的环境来设置组件的初始状态和逻辑。然而,setup函数本身并不直接提供组件实例。在setup函数内部,你无法直接访问到完整的组件实例,因为在这个阶段,组件实例还没有完全创建。不过,Vue3提供了一个getCurrentInsta......
  • 参考vue3,手写一个响应式系统
    手写一个响应式系统是一个复杂且有趣的任务,它涉及到很多Vue3内部的核心概念,如Proxy、ReactiveEffect、DependencyTracking等。下面是一个简化的响应式系统的实现,以帮助你理解其基本原理。//创建一个存储所有响应式对象的WeakMap,用于依赖收集和触发更新consttargetMap=new......
  • 请问vue3编译做了哪些优化?
    Vue3在编译方面进行了多项优化,以提升应用的性能、减小包体积,并改善开发体验。以下是一些主要的优化措施:静态树提升:Vue3引入了静态树提升优化,这是一项通过将模板中的静态部分提升为常量来减小渲染时开销的技术。这种优化可以显著降低渲染函数的复杂性,并减少不必要的运行时开销......