vue新学习 05vue的创建运行原理(vue的生命周期)

news2024/11/27 22:39:57

01.vue的创建过程
在这里插入图片描述

原理解释:
在这里插入图片描述

1.定义:
1.Vue的生命周期是指Vue实例从创建到销毁的整个过程中经历的一系列阶段,Vue在关键时刻帮我们调用的一些特殊名称的函数。
2.生命周期函数的名字不可更改,但函数的具体内容是程序员根据需求编写的。
3.生命周期函数中的this指向是vm 或 组件实例对象。

2.一共有八个阶段:
Vue的生命周期分为8个阶段,分别是:

beforeCreate(创建前):在实例初始化之后,数据观测和事件配置之前被调用。此时,实例的数据和方法都还未初始化。

created(创建后):在实例创建完成后被调用。此时,实例已完成数据观测、属性和方法的运算,但尚未挂载到DOM上。

beforeMount(挂载前):在实例挂载到DOM之前被调用。此时,模板已经编译完成,但尚未渲染成HTML。

mounted(挂载后):在实例挂载到DOM之后被调用。此时,实例已经完成了DOM的渲染,并且可以访问到挂载的元素。

beforeUpdate(更新前):在数据更新之前被调用,发生在虚拟DOM重新渲染和打补丁之前。可以在此时进行状态的更改。

updated(更新后):在数据更新之后被调用,发生在虚拟DOM重新渲染和打补丁之后。此时,组件已经更新,可以执行一些操作。

beforeDestroy(销毁前):在实例销毁之前被调用。此时,实例还可以正常访问。但是数据不会。

destroyed(销毁后):在实例销毁之后被调用。此时,实例中的所有事件监听器和子组件都已被移除。

通过这些生命周期钩子函数,我们可以在不同阶段对Vue实例进行操作和控制,实现一些特定的逻辑和功能。


3.常用的生命周期方法
mounted(): 发送ajax请求, 启动定时器、绑定自定义事件、订阅消息等异步任务【初始化操作】
beforeDestroy(): 做收尾工作, 如: 清除定时器、解绑自定义事件、取消订阅消息等【首尾工作】


4.关于销毁Vue实例
销毁后借助Vue开发者工具看不到任何信息
销毁后自定义事件会失效,但原生DOM事件依然有效
一般不会在beforeDestroy操作数据,因为即使操作数据,也不会再触发更新流程了。
例子

<body>
    <div id="demo">
        <button @click="destoryVM">destroy vm</button>
        <p v-show="isShow">YK菌学前端</p>
    </div>
    <script src="../js/vue.js"></script>
    <script>
        new Vue({
            el: "#demo",
            data:{
                isShow: true,
            },

            // 1. 初始化阶段
            beforeCreate(){
                console.log('beforeCreate()');
            },
            created(){
                console.log('created()');
            },
           
            beforeMount(){
                console.log('beforeMount()');
            },
            mounted(){ // 初始化显示之后立即调用(1次)
                console.log('mounted()');
                this.intervalId = setInterval(() => { // 将函数进行参数传递,最好用箭头函数,因为它函数内部没有this,直接用外面的this
                    this.isShow = !this.isShow;
                }, 1000)

            },

            // 2. 更新阶段
            beforeUpdate(){
                console.log('beforeUpdate()');
            },
            updated(){
                console.log('updated()');
            },

            // 3. 死亡阶段
            beforeDestroy(){ // 死亡之前调用(1次)
                console.log('beforeDestroy()');
                clearInterval(this.intervalId);//清除定时器
            },
            destroyed(){
                console.log('destroyed()');
            },

            methods:{
                destoryVM(){
                    this.$destroy();// 内存泄漏,定时器还没有清除
                }
            },
        })
    </script>
</body>

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/858434.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

星戈瑞NH2-PEG-ICG应用纳米荧光成像

欢迎来到星戈瑞荧光stargraydye! NH2-PEG-ICG是一种具有胺基的聚乙二醇修饰的吲哚菁绿染料&#xff0c;常用于纳米荧光成像应用。以下是NH2-PEG-ICG在纳米荧光成像应用中的一些特点和优势&#xff1a; **1. 荧光性能&#xff1a;**NH2-PEG-ICG在近红外光谱区域&#xff08;约7…

电商数据API接口有什么作用和意义,让我们来了解一下吧!

在现代互联网时代&#xff0c;电子商务已经成为了经济发展的重要推动力之一。越来越多的企业和个人开始通过电商平台进行商品销售&#xff0c;而准确的数据分析和及时的数据更新成为了他们的关键需求。而电商数据API接口&#xff0c;作为电商平台和第三方开发者之间的桥梁&…

星河双子塔对面万科星火城市更新规划出炉

龙岗区坂田街道欧威尔空调厂城市更新单元“工业上楼”项目规划&#xff08;草案&#xff09;已经龙岗区“工业上楼”项目工作专班2023年第四次审批会议审议通过。根据《中华人民共和国城乡规划法》《深圳经济特区城市更新条例》《深圳市城市更新办法实施细则》《深圳市“工业上…

手动创建一个DOCKER镜像

1. 我们先使用C语言写一个hello-world程序 vim hello.c # include <stdio.h>int main() {print("hello docker\n"); } 2. 将hello.c文件编译成二进制文件, 需要安装工具 yum install gcc yum install glibc-static 开始编译 gcc -static hello.c -o hello 编译…

600V EasyPIM™ IGBT模块FB30R06W1E3、FB20R06W1E3B11、FB20R06W1E3降低了系统成本和损耗,可满足高能效要求。

EasyPIM™ IGBT模块是一种三相输入整流器PIM IGBT模块&#xff0c;采用TRENCHSTOP™ IGBT7、发射器控制7二极管和NTC/PressFIT技术。该模块具有增强的dv/dt可控性、改进的FWD软度、优化的开关损耗以及8μs短路稳定性。EasyPIM&#xff08;功率集成模块&#xff09;外形非常小巧…

python工具库有哪些,python工具包怎么用

大家好&#xff0c;小编来为大家解答以下问题&#xff0c;python工具包有哪些&#xff0c;python工具包怎么用&#xff0c;现在让我们一起来看看吧&#xff01; 最近有多位读者留言&#xff0c;咨询更便捷、高效的python编程开发工具&#xff08;IDE&#xff09;&#xff0c;本…

词性标记:隐马尔可夫模型简介(1/2)

一、说明 作为人类&#xff0c;我们比这个星球上的任何动物都更了解自然语言的许多细微差别。比如说&#xff1a;“你吃了吗”&#xff0c;“企业吃不饱”&#xff0c;“吃豆腐”&#xff0c;“吃醋了”&#xff1b;同样一个“吃”&#xff0c;意义不同&#xff0c;从一个符号出…

tsmc12 加tap cell/boundary cell失败原因总结

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?拾陆楼知识星球入口 via0_grid tsmc12有via0的概念,boundary cell不需要对齐via0,但tap cell的pg pin是有via0这一层的,所以当tap cell添加失败,首先需要检查的就是via0_grid是否创建成功,offset能否对齐via0。 …

【低代码预研】通过低代码平台开发应用程序

目录 低代码介绍 预研目标 预研产品 1. 业务流程 2. 用户权限 3. 统计图表 4. 大屏设计 5. 第三方登录 6. 分布式调度 小结 近几年&#xff0c;一直对低代码平台有所耳闻&#xff0c;目前已经对低代码平台有了一定的认识&#xff0c;如果能通过一个可视化的配置页面就能完成前端…

今天我会带你了解音频转文字怎么弄的

常常被老板的“长”会议限制住了怎么办&#xff1f;当然这里的“长”是指时长。 老板的唠叨话不是一两个小时能讲完的&#xff0c;而且还需要你将会议心得整理给他&#xff0c;你可以受得吗&#xff1f; 我经常遇到这种情况&#xff0c;都习以为常了&#xff0c;因为我找到应…

Microsoft SQL Server 2008中,语法生成错误“并行数据仓库(PDW)功能未启用“(已解决)

案例&#xff1a; 原表有两列&#xff0c;分别为月份、月份销售额&#xff0c;而需要一条 SQL 语句实现统计出每个月份以及当前月以前月份销售额和 sql 测试数据准备&#xff1a; DECLARE Temp Table ( monthNo INT, --- 月份 MoneyData Float --- 金额 ) insert INTO TEM…

PintOS lab2 User Programs 实验记录

Background 大体流程如下图所示&#xff0c;显然这时候start_process无法被调度到。 然后start_process 里面load .out文件 &#xff08;.o文件就是对象文件,是可重定向文件的一种,通常以ELF格式保存&#xff0c;里面包含了对各个函数的入口标记&#xff0c;描述&#xff0c;…

VLAN监控及常见问题排查

局域网&#xff0c;我们通常称为LAN&#xff0c;是一种由基于同一地理位置的设备组成的网络&#xff0c;可实现它们之间的通信&#xff0c;局域网的虚拟对应物是虚拟局域网或 VLAN。VLAN 增强了 LAN&#xff0c;提供了进行更改的灵活性、更高的可扩展性和更好的安全性。 使用 …

LLM中的微调演变

目录 微调演变InstructGPT的训练 微调演变 首先是任务驱动了微调的发展&#xff0c;GPT1和BERT遵循经典的预训练微调范式&#xff0c;到GPT3时期&#xff0c;预训练任务表现为句子接龙&#xff0c;给定前文持续预测下一个word&#xff0c;当模型参数规模和训练数据增大后&…

【从零学习python 】11.Python循环语句和控制流程

文章目录 while 语法for循环for循环的格式range break和continuebreak的使用continue的使用 嵌套循环while嵌套的格式语法结构:练习题答案进阶案例 while 语法 while 判断条件:代码块我们发现&#xff0c;while循环的语法结构和if语句的结构很相像&#xff0c;那么这两个之间有…

CSS-grid布局

网格布局也叫grid布局&#xff0c;平常写样式的时候基本上都是用的flex布局。 像以下布局&#xff0c;用flex布局就可能会有有点麻烦&#xff0c;这时候用grid布局就方便的多了。 或者是照片墙 grid布局就是将容器划分为行和列&#xff0c;产生单元格&#xff0c;然后在指定的…

幻读怎么复现

大家好&#xff0c;我是想想。 很久没有给大家分享技术了&#xff0c;主要在计划一些事情&#xff0c;几乎没什么时间爽文了。 今天从实操上实现了MySQL事务隔离复现问题&#xff0c;就记录分享给大家吧。 正文 我们知道&#xff0c;著名的四大事务特性ACID特性 Atomicity…

Mongodb管道函数操作数组,过滤,数组截取,条件分支,字符串合并

&#xff08;学习的本质&#xff0c;不在于记住哪些知识&#xff0c;而在于它触发了你的思考——迈克尔桑德尔&#xff09; 假如有以下数据结构 其中features内value的数据结构是可变的 {"_id": {"$oid": "64bd0b17258d09faf6ebb6ee"},"i…

wpf控件上移下移,调整子集控件显示顺序

页面代码&#xff1a; <!-- 导出A2&#xff0c;自定义导出设置列&#xff0c;添加时间&#xff1a;2023-8-9 14:14:18&#xff0c;作者&#xff1a;whl&#xff1b; --><Window x:Class"WpfSnqkGasAnalysis.WindowGasExportA2"xmlns"http://schemas.…

【福建事业单位-资料分析】03 比重和平均数

【福建事业单位-资料分析】03 比重和平均数 一、比重&#xff08;现期比重&#xff0c;基期比重、两期比重&#xff09;1.1 现期比重增长贡献量&#xff0c;利润率 1.2基期比重&#xff08;用现期和增长率逆求&#xff09;1.3两期比重&#xff08;难点重点&#xff09;——比较…