Vue生命周期函数(详解)

Vue生命周期函数(详解)什么是 Vue 的生命周期 Vue 的生命周期函数有哪些

什么是Vue生命周期?

Vue 实例从创建到销毁的过程,就是生命周期。也就是从开始创建、初始化数据、编译模
板、挂载 Dom→渲染、更新→渲染、卸载等一系列过程,我们称这是 Vue 的生命周期。

Vue的生命周期函数有哪些?在各个阶段做的事是什么?

四个周期八个函数

创建阶段:

beforeCreate(创建前):

给实例化的Vue对象添加了属性和方法还有生命周期函数。

created(创建后):

把methods和data添加到Vue实例化对象上,所以在created周期内可以访问data和methods中的数据,在这个阶段我们一般发送网络请求获取数据。

挂载阶段:

beforeMount(挂载前):

在DOM挂载页面进行data数据’预’处理

mounted(挂载后):

已经把DOM挂载到页面上了,是可以进行DOM元素操作的阶段了(可以理解为已经将虚拟DOM绘制到浏览器中——即为真实DOM)

更新阶段:

 beforeUpdate(更新前):

数据更新时调用,发生在虚拟 DOM 打补丁之前。这里适合在更新之前访问现有的 DOM,比如手动移除已添加的事件监听器,该钩子在服务器端渲染期间不被调用,因为只有初 次渲染会在服务端进行,这个阶段的数据会进行变更,DOM没有实际更新。

updated(更新后):

数据更新的DOM也已经产生在页面上了,可以继续访问

销毁阶段

beforeDestroy(销毁前):

实例销毁之前调用。在这一步,实例仍然完全可用。该钩子在服务器端渲染期间不被调用。

destroy(销毁后):

Vue 实例销毁后调用。调用后,Vue 实例指示的所有东西都会解绑定,所有的事件
监听器会被移除,所有的子实例也会被销毁。

组件缓存是什么?组件缓存有什么作用?组件缓存时出现的周期函数有哪些?

理解:

vue 中有个动态组件的概念,它能够帮助开发 者更好的实现组件之间的切换,但是在面对需求频繁的变化,去要切换组件时,动态组件在切 换的过程中,组件的实例都是重新创建的,而我们需要保留组件的状态,为了解决这个问题, 需要使用到 vue 中内置组件

包裹动态组件时,会缓存不活动的组件实例,主要用于保留组 件状态或避免重新渲染。

好处:

不会反复创建销毁组件,提高性能。

缓存阶段:

activated:

keep-alive 组件激活时调用。该钩子在服务器端渲染期间不被调用

deactivated:

keep-alive 组件停用时调用。该钩子在服务器端渲染期间不被调用

新增的生命周期函数

errorCaptured(2.5.0+ 新增)

当捕获一个来自子孙组件的错误时被调用。此钩子会收到三个参数:错误对象、发生
错误的组件实例以及一个包含错误来源信息的字符串,此钩子可以返回 false 以阻止该错误继
续向上传播。
Vue生命周期函数(详解)

 

Vue生命周期函数(详解)

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/177317.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午7:47
下一篇 2026年3月26日 下午7:48


相关推荐

  • Java八种基本数据类型(图文详解)

    Java八种基本数据类型(图文详解)Java 八种基本数据类型 Java 八种数据类型 Java 八种数据类型的分类 图 基本数据类型分为三大类 数值型 字符型 布尔型数值型整数类型 byte short int long 浮点型 float double 字符型 char 布尔类型 boolean Java 八种数据类型 Java 八种数据类型的分类 图 Java 的数据类型分为两大类 基本数据类型 引用数据类型基本数据类型分为三大类由图可知 我们继续按照 Java 的基本数据类型可以分为三大类 数值型数值型数据 metricdat

    2026年3月17日
    2
  • 基于近邻的协同过滤算法

    基于近邻的协同过滤算法这节课我们来学习K近邻在推荐系统中的应用,你将完成本课程的第一个实战项目:基于KNN的电影推荐系统!为了使你能够顺利地完成实战内容,我们先了解一下推荐系统中的基础知识。基于近邻用户的协同过滤假定有一个场景:某个周日的下午,你感觉很无聊,然后从电脑上打开了一个视频网站,想看下最近有什么好看的电影。然而你发现网站上的热门电影基本都看过,其他的电影又太多,不知道该看什么。想使用搜索框去查一下,但是又不知道该搜什么关键词,这个时候你的内心很焦灼,总不能挨个去尝试吧,那时间成本也太大了…仔细想想还是有办法的,那

    2022年6月30日
    30
  • linux网卡的fec功能,网络控制器驱动程序学习记录fec(1)

    linux网卡的fec功能,网络控制器驱动程序学习记录fec(1)1,首先从模块加载函数module_init(fec_enet_module_init);staticint__initfec_enet_module_init(void){structnet_device*dev;inti,j,err;DECLARE_MAC_BUF(mac);printk(“FECENETVersion0.2\n”);for(i=0;(i<…

    2022年8月11日
    8
  • ftp客户端软件,8款最受欢迎的ftp客户端软件

    对于ftp客户端软件,你了解多少?其实一般人也接触不到这种软件。ftp客户端软件主要是针对从事网站管理的工作人员比较有利的一款工具。可以帮助他们快速的解决工作中的问题。方便、简单、快捷又明了的解决问题,下面有六款ftp客户端软件的介绍。第一款:IIS7服务器管理工具这款工具是真的好用,童叟无欺的那种好用。在我心里它是排在中文版javaftp工具类中的榜首的。它不仅拥有每个javaftp工具类都具备的批量管理功能,还具备很多你意想不到的地方,比如定时同步(上传和下载)、多任务同时进行、定时备份还能够自

    2022年4月5日
    106
  • DAVINCI DM365-DM368开发攻略——开发环境搭建(DVSDK4.02) 适用于DM3730[通俗易懂]

    DAVINCI DM365-DM368开发攻略——开发环境搭建(DVSDK4.02) 适用于DM3730[通俗易懂]DAVINCIDM365-DM368开发攻略——开发环境搭建(DVSDK4.02)标签:开发环境 搭建 dvsdk DM368 DM365原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://zjbintsystem.blog.51cto.com/964211/621435第一节、 技术开发环

    2022年8月13日
    6
  • MySQL连接查询

    MySQL连接查询首先创建两个表fruits表,包含水果id、名字、价格orders表,包含id和订单号(num)1.内连接查询(INNORJOIN)使用普通sql语句selectfruits.id,name,price,numfromfruits,orderswherefruits.id=orders.id;使用内连接查询语句(结果与上图相同)s…

    2022年4月30日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号