Vue生命周期

news/2024/10/17 10:28:58/

私人博客

许小墨のBlog —— 菜鸡博客直通车

系列文章完整版,配图更多,CSDN博文图片需要手动上传,因此文章配图较少,看不懂的可以去菜鸡博客参考一下配图!

系列文章目录

前端系列文章——传送门
后端系列文章——传送门


文章目录

  • 私人博客
  • 系列文章目录
  • vue生命周期


vue生命周期

vue从开始创建到最终被销毁的整个过程,是vue的生命周期。整个过程如下图:

整体分为3个阶段:

  • 初始化阶段
    • 创建vue实例
    • 初始化vue中的很多监听,开始生命周期
    • 将data中的数据进行监听,并放在vue实例上,可以访问到数据了
    • 判断是否有el参数,如果没有就一直等待vue实例调用$mount(el参数)
    • 判断是否有template参数
      • 如果有,就将template编译成渲染函数
      • 如果没有,就将el的outerHTML编译成template
    • 创建vue实例的$el属性,并且用上面的渲染函数或template替换掉指定的el参数
    • 挂载好了,页面也就显示出来了
  • 更新阶段
    • 当数据发生改变的时候,虚拟节点重新渲染并且打补丁
    • 重新挂载好
  • 销毁阶段
    • 当vue实例调用$destory的时候,拆掉监听、拆掉子组件、拆掉事件。。。
    • 已经销毁了

为了让我们更灵活的操控vue,vue框架内置了8个生命周期钩子函数,可以让我们在vue在整个生命周期中进行到某个阶段的时候,执行我们的代码。例如在挂载的时候,操作一下标签;在初始化以后操作一下数据。。。

生命周期钩子是函数是vue内置的,在生命周期进行到对应的阶段的时候,会自动调用,我们只需要将自己要执行的代码写好即可,不需要手动调用。

  1. beforeCreate - 此时vue实例中还没有数据
  2. created - 此时vue实例中有数据了,但是还不能操作dom
  3. beforeMount - 同上
  4. mounted - 挂载好了,页面显示出来了,可以操作dom了
  5. beforeUpdate - 数据即将修改,但是还没有修改完成
  6. updated - 数据修改完成,dom也重新渲染了
  7. beforeDestroy - 已经调用了销毁方法,即将销毁
  8. destroyed - 已经销毁了

我们通常会在created阶段发送请求,给data数据赋值;需要操作的dom的话,就在mouted阶段进行;需要在vue实例销毁的时候清空一些数据的操作,就在beforeDestroy阶段进行。。。


本博文缺失大量图片,严重影响内容完整性以及阅读体验,完整内容请前往本人菜鸡博客——许小墨のBlog


http://www.ppmy.cn/news/59411.html

相关文章

解决Xshell安装时错误代码-1603的问题

安装流程 官网下载:家庭/学校免费 - NetSarang Website 填写姓名,邮箱,申请下载,就能在邮箱收到下载链接 点击链接即可自动开始下载; 下载完成后进行安装即可 问题描述 安装进行到最后一步时,出现下图…

走近大数据——什么是大数据、计算架构的发展

文章目录 一、什么是大数据二、大数据计算架构的发展1.RDBMS阶段2.Hadoop Map-Reduce阶段3.Spark阶段4.Flink阶段 参考 一、什么是大数据 大数据是指无法在有限时间内用常规软件工具对其进行获取、存储、管理和处理的数据集合。 大数据的特点: 海量化:数…

【操作系统OS】学习笔记:第一章 操作系统基础【哈工大李治军老师】

基于本人观看学习 哈工大李治军老师主讲的操作系统课程 所做的笔记&#xff0c;仅进行交流分享。 特此鸣谢李治军老师&#xff0c;操作系统的神作&#xff01; 如果本篇笔记帮助到了你&#xff0c;还请点赞 关注 支持一下 ♡>&#x16966;<)!! 主页专栏有更多&#xff0…

SpringCloud--gateway 网关

在Spring Cloud中&#xff0c;使用Gateway网关访问服务可以有多种好处&#xff0c;包括但不限于以下几点&#xff1a; 统一入口管理&#xff1a;Gateway作为统一的服务入口&#xff0c;可以对所有的请求进行统一管理和控制&#xff0c;实现微服务集中管理。 动态路由&#xff…

Linux C/C++ 网络编程中地址格式转换(inet_pton和inet_ntop函数)

网络编程中地址格式转换&#xff08;inet_pton和inet_ntop函数&#xff09; 地址格式转换 #include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h>int inet_pton(int af , const char * src ,void * dst);&#xff08;1&#xf…

iOS中的autorelease

iOS中的autorelease是一种非常重要的内存管理机制&#xff0c;它可以自动释放对象&#xff0c;从而避免内存泄漏和内存溢出等问题。在本文中&#xff0c;我们将详细介绍iOS中的autorelease机制&#xff0c;包括它的原理、使用方法以及注意事项等内容。 autorelease的原理 aut…

【模块系列】DY-SV17F语音播放模块

前言 本文针对官方给的应用手册进行补充和加上个人理解。在官方的资料中已经介绍的很详细了&#xff0c;我就节选部分出来&#xff0c;基本认识模块就行了吧。本来还行自己介绍呢&#xff0c;没想到官方写这么详细了&#xff0c;也不知道介绍啥了&#xff0c;现在单纯的写为个人…

提升自我数据分析能力的根本,是方法论!

很多人问&#xff0c;我是财务&#xff0c;能转行业做BI吗&#xff1f;我该学些什么&#xff1f;该掌握哪些技能&#xff1f;该如何学习&#xff1f;我是学生&#xff0c;在校期间专业不扎实&#xff0c;该怎么办&#xff1f;我是小白&#xff0c;还能学会数据分析吗&#xff1…