我的编程空间,编程开发者的网络收藏夹
学习永远不晚

详细聊聊Vue生命周期的那些事

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

详细聊聊Vue生命周期的那些事

前言

如今学习Vue的人越来越多了,Vue框架或React框架的学习也成为开发了前端开发人员的必备技能,今天我们就来聊聊Vue中的生命周期函数,Vue中生命周期函数的参考价值很高,让我们来一起认识它吧~

一、Vue2中的生命周期

实例的生命周期

在介绍生命周期之前,我们需要知道在Vue中要渲染一块页面内容的时候,会有下面这几个过程:

  1. 解析语法生成 AST。
  2. 根据 AST 结果,完成 data 数据初始化。
  3. 根据 AST 结果和 data 数据绑定情况,生成虚拟 DOM。
  4. 将虚拟 DOM 生成真正的 DOM 插入到页面中,此时页面会被渲染。

当我们绑定的数据进行更新的时候,又会产生以下这些过程:

  1. 框架接收到数据变更的事件,根据数据生成新的虚拟 DOM 树。比较新旧两棵虚拟 DOM 树,得到差异。
  2. 把差异应用到真正的 DOM 树上,即根据差异来更新页面内容。

当我们清空页面内容时,还有:

  1. 注销实例,清空页面内容,移除绑定事件、监听器等。

Vue为实例提供的生命周期函数一共有8个:

  1. beforeCreate(): 初始化实例前,data、methods等不可获取——1之后,2之前
  2. created():实例化初始化完成,此时可获取data里数据和methods事件——2之后,3之前
  3. beforeMount():虚拟DOM创建完成,此时未挂载到页面中,vm.$el可获取未挂载模板——3之后,4之前
  4. mounted():数据绑定完成,真实DOM已挂载到页面,vm.$el可获取真实DOM——4之后
  5. beforeUpdate():数据更新,DOM Diff得到差异,未更新到页面——5之后,6之前
  6. updated():数据更新,页面也已更新——6之后
  7. beforeDestroy():实例销毁前——7之前
  8. destroyed():实例销毁完成——7之后

关于实例的生命周期,大家还可以参考官方的图例

其它生命周期钩子

其它的生命周期函数还有activated(), deactivated(), errorCaptured()

keep-alive独有的生命周期分别为activated和deactivated。

用keep-alive包裹的组件在切换时不会进行销毁,而是缓存在内存中并执行deactived钩子函数,命中缓存渲染后会执行activated钩子函数

errorCaptured()钩子当在子组件内捕获到错误时会调用这个钩子函数。

二、Vue3中的生命周期

Vue3中的生命周期在使用Options API和Composition API会有所不同。

Options API生命周期

  • beforeDestroy改为beforeUnmount
  • destroyed改为unmounted

尤大大为什么要把他改成这样,他的回复是这很大程度上是为了更好的命名约定,对应的中文正是卸载组件和前面的挂载组件契合不少。

  • 其它沿用Vue2生命周期

Composition API生命周期

在Composition API中使用钩子函数,我们只需要在钩子函数前面添加“on”,并在setup函数内部即可,它就会变成这样👇

我们只需要引入这些钩子函数就可以使用啦

Vue3的钩子函数如下:

  1. onBeforemount()
  2. onMounted()
  3. onBeforeUpdate()
  4. onUpdated()
  5. onBeforeUnmount()
  6. onUnmounted()
  7. onActivated()
  8. onDeactivated()
  9. onErrorCaptured()

如果你注意观察,你会发现两个生命周期函数消失了,beforeCreate()和created()不会出现在Composition API中,我们有setup()方法即可,setup()方法出现在beforeCreate()和created()之间。

两个新的Vue3生命周期函数

  • onRenderTracked():第一次在render函数中访问反应性依赖项时,将调用此函数,当我们想查看正在跟踪哪些依赖项时,钩子很有用,对调式很有作用。
  • onRenderTriggered():当触发新渲染时,将调用此选项,允许检查哪个依赖项触发了要重新渲染的组件。

最后

⚽这篇文章主要介绍了Vue中的生命周期函数,相信你一定有所收获~

到此这篇关于Vue生命周期的那些事的文章就介绍到这了,更多相关Vue生命周期内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

详细聊聊Vue生命周期的那些事

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

一文聊聊Vue组件生命周期的三个阶段(创建、运行和销毁)

本篇文章带大家详细介绍一下Vue组件生命周期的三个阶段:创建阶段、运行阶段和销毁阶段,希望对大家有所帮助!
2023-05-14

Vue组件与生命周期详细讲解

Vue的生命周期就是vue实例从创建到销毁的全过程,也就是newVue()开始就是vue生命周期的开始。Vue实例有⼀个完整的⽣命周期,也就是从开始创建、初始化数据、编译模版、挂载Dom->渲染、更新->渲染、卸载等⼀系列过程,称这是Vue的⽣命周期
2022-11-13

vue的生命周期钩子与父子组件的生命周期详解

Vue的生命周期就是vue实例从创建到销毁的全过程,也就是newVue()开始就是vue生命周期的开始。Vue实例有⼀个完整的⽣命周期,也就是从开始创建、初始化数据、编译模版、挂载Dom->渲染、更新->渲染、卸载等⼀系列过程,称这是Vue的⽣命周期
2022-11-13

Android Activity的生命周期详细介绍

Android Activity的生命周期详细介绍 生命周期描述的是一个类从创建(new出来)到死亡(垃圾回收)的过程中会执行的方法。在这个过程中,会针对不同的生命阶段调用不同的的方法。 Activity是Android中四大组
2022-06-06

vue的生命周期有哪些阶段

这篇文章主要讲解了“vue的生命周期有哪些阶段”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“vue的生命周期有哪些阶段”吧!有4大阶段:1、初始化阶段,包含beforeCreate(创建前)
2023-07-04

基于Android Service 生命周期的详细介绍

Service概念及用途: Android中的服务,它与Activity不同,它是不能与用户交互的,不能自己启动的,运行在后台的程序,如果我们退出应用时,Service进程并没有结束,它仍然在后台运行,那我们什么时候会用到Service呢?
2022-06-06

Vue生命周期的相关知识点有哪些

这篇文章主要为大家展示了“Vue生命周期的相关知识点有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Vue生命周期的相关知识点有哪些”这篇文章吧。1. 生命周期(重要)1.1 初步认识生命周
2023-06-29

C++临时性对象的生命周期详细解析

临时性对象的被摧毁,应该是对完整表达式(full-expression)求值过程中的最后一个步骤。该完整表达式造成临时对象的产生
2022-11-15

父子聊通讯:揭秘 VUE 父子组件通信的那些事儿

本文将深入解析VUE父子组件通信的原理和实现方式,并通过代码示例展示如何使用props、$emit、ref、$children和$parent实现父子组件间的通信。
父子聊通讯:揭秘 VUE 父子组件通信的那些事儿
2024-02-07

JVM类加载机制及生命周期的详细介绍

这篇文章主要讲解了“JVM类加载机制及生命周期的详细介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JVM类加载机制及生命周期的详细介绍”吧!一.目标:1.什么是类的加载?2.类的生命周期
2023-06-02

微信小程序开发中生命周期的详细介绍

生命周期是指一个对象从创建→>运行>销毁的整个阶段,强调的是一个时间段,文中介绍了小程序中组件的生命周期,需要的朋友可以参考下
2023-05-13

编程热搜

目录