mounted钩子函数_Vue 探索之路——生命周期和钩子函数的一些理解

ec6186f4dffd2e189123977fc5a8033f.png

对于执行顺序和什么时候,下面我们将结合代码去看看钩子函数的执

<!DOCTYPE html>
<html>
<head><title></title><script type="text/javascript" src="https://cdn.jsdelivr.net/vue/2.1.3/vue.js"></script>
</head>
<body><div id="app"><p>{{ message }}</p>
</div><script type="text/javascript">var app = new Vue({el: '#app',data: {message : "xuxiao is boy" },beforeCreate: function () {console.group('beforeCreate 创建前状态===============》');console.log("%c%s", "color:red" , "el     : " + this.$el); //undefinedconsole.log("%c%s", "color:red","data   : " + this.$data); //undefined console.log("%c%s", "color:red","message: " + this.message)  //undefined},created: function () {console.group('created 创建完毕状态===============》');console.log("%c%s", "color:red","el     : " + this.$el); //undefinedconsole.log("%c%s", "color:red","data   : " + this.$data); //已被初始化 console.log("%c%s", "color:red","message: " + this.message); //已被初始化},beforeMount: function () {console.group('beforeMount 挂载前状态===============》');console.log("%c%s", "color:red","el     : " + (this.$el)); //已被初始化console.log(this.$el);console.log("%c%s", "color:red","data   : " + this.$data); //已被初始化  console.log("%c%s", "color:red","message: " + this.message); //已被初始化  },mounted: function () {console.group('mounted 挂载结束状态===============》');console.log("%c%s", "color:red","el     : " + this.$el); //已被初始化console.log(this.$el);    console.log("%c%s", "color:red","data   : " + this.$data); //已被初始化console.log("%c%s", "color:red","message: " + this.message); //已被初始化 },beforeUpdate: function () {console.group('beforeUpdate 更新前状态===============》');console.log("%c%s", "color:red","el     : " + this.$el);console.log(this.$el);   console.log("%c%s", "color:red","data   : " + this.$data); console.log("%c%s", "color:red","message: " + this.message); },updated: function () {console.group('updated 更新完成状态===============》');console.log("%c%s", "color:red","el     : " + this.$el);console.log(this.$el); console.log("%c%s", "color:red","data   : " + this.$data); console.log("%c%s", "color:red","message: " + this.message); },beforeDestroy: function () {console.group('beforeDestroy 销毁前状态===============》');console.log("%c%s", "color:red","el     : " + this.$el);console.log(this.$el);    console.log("%c%s", "color:red","data   : " + this.$data); console.log("%c%s", "color:red","message: " + this.message); },destroyed: function () {console.group('destroyed 销毁完成状态===============》');console.log("%c%s", "color:red","el     : " + this.$el);console.log(this.$el);  console.log("%c%s", "color:red","data   : " + this.$data); console.log("%c%s", "color:red","message: " + this.message)}})
</script>
</body>
</html>

139e69308671aeb85a8153c252e5c329.png

根据運行結果 我們可以看出來:

beforecreated:el 和 data 并未初始化
created:完成了 data 数据的初始化,el没有
beforeMount:完成了 el 和 data 初始化
mounted :完成挂载另外在标红处,在挂載之前我们能发现el还是 {{message}},

d48f6e7c7ef1d2224ec9d873a6c99018.png

这里就是应用的 Virtual DOM(虚拟Dom)技术,先把坑占住了。到后面mounted挂载的时候再把值渲染进去。

接下來我們看update鈎子函數:

在控制台輸入:app.message= 'yes !! I do';会触发beforeupdate和update函数

97357f1c50e1f0a0e0f3848256ca8908.png

destroy 相关

在console里执行下命令对 vue实例进行销毁。

在console中把实例销毁:触发destory函数

app.$destroy();

41a9a4597ed99b961d504fb8b6f96f1b.png


我们再重新改变message的值,vue不再对此动作进行响应了。但是原先生成的dom元素还存在,可以这么理解,执行了destroy操作。

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

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

相关文章

梯度化一张图片

最近刚好学习到梯度方面的知识&#xff0c;所以上网查找了下关于梯度化一副图片的opencv代码&#xff0c;参考代码出自http://www.cnblogs.com/gnuhpc/archive/2012/06/28/2568755.html #include<stdio.h> #include<cv.h> #include<highgui.h> #include<m…

逃跑吧少年服务器临时维护中,逃跑吧少年—逃跑吧少年5月30日更新 主动技能解锁...

逃跑吧少年—逃跑吧少年5月30日更新 主动技能解锁发表时间&#xff1a; 2019-05-31 作者&#xff1a;7k7k电脑版《逃跑吧&#xff01;少年》服务器将于5月30日9:00-11:00进行服务器维护工作&#xff01;请少年们安排好游戏时间&#xff0c;在维护前下线&#xff0c;以免造成…

graphpad导出图片不居中_从GraphPad Prism一键导出满足期刊要求的图表

众所周知&#xff0c;每个期刊都有自己对论文格式的规则&#xff0c;其中对图表的格式也有具体的规则。为减少发表所需的时间&#xff0c;GraphPad Prism允许您自定义导出&#xff08;文件类型、分辨率、透明度、尺寸、色彩空间 RGB/CMYK&#xff09;图表&#xff0c;以满足期刊…

云服务器 怎样修改地域,云服务器 怎样修改地域

云服务器 怎样修改地域 内容精选换一换华为云帮助中心&#xff0c;为用户提供产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题、视频帮助等技术文档&#xff0c;帮助您快速上手使用华为云服务。华为云帮助中心&#xff0c;为用户提供产品简介、价格说明、…

python 除数总是提示为0_python负数求余不正确?——取模 VS 取余

前天小王同学正在leetcode兴致勃勃的刷题&#xff0c;用java写了一版后又习惯性的用python写了一版&#xff0c;代码逻辑完全一样&#xff0c;但提交答案后居然提示【解答错误】&#xff01;经过反复调试&#xff0c;发现问题出在涉及求余的地方&#xff0c;python和java得出的…

qldump 备份所有表_MySQL中的备份和恢复是怎样执行的?

- 点击上方“中国统计网”订阅我吧&#xff01;-MySQL备份MySQL中的逻辑备份是将数据库中的数据备份为一个文本文件&#xff0c;备份的文件可以被查看和编辑。在MySQL中&#xff0c;使用mysaldump工具来完成备份。有以下3种来调用mysqldump&#xff1a;1. 备份指定的数据库&…

linux系统管理与服务器配置高志君_如何在 Linux 上安装、配置 NTP 服务器和客户端?...

你也许听说过这个词很多次或者你可能已经在使用它了。在这篇文章中我将会清晰的告诉你 NTP 服务器和客户端的安装。-- Magesh Maruthamuthu你也许听说过这个词很多次或者你可能已经在使用它了。在这篇文章中我将会清晰的告诉你 NTP 服务器和客户端的安装。之后我们将会了解 Chr…

8位可控加减法器_行测高分技巧-资料分析之有效数字加减法取舍

资料分析是我们行测试卷中得分率较高的一个部分&#xff0c;所以对资料分析这一部分的题目我们必须把握。但是做题过程中&#xff0c;考生碰到一些数字较大&#xff0c;列式复杂的题目&#xff0c;就无从下手&#xff0c;不知如何应对&#xff0c;今天陕西京佳教育就和各位考生…

3层vni vxlan_方便业务迁移,大型企业数据中心VXLAN大二层基础,一分钟了解下

一、VXLAN 简介(1)定义RFC7348 定义了 VLAN 扩展方案 VXLAN(Virtual eXtensible Local Area Network)。VXLAN 采用 MAC in UDP(User Datagram Protocol)封装方式&#xff0c;是 NVO3(Network Virtualization overLayer 3)中的一种网络虚拟化技术。(2)目的作为云计算的核心技术之…

设置dns_网络速度缓慢怎么办?轻松一键修改DNS设置让网速提升五倍

不知道大家有没有这种情况的发生&#xff0c;在家上网或者看智能电视&#xff0c;打开一个普通网页&#xff0c;明明自己办的是100M的宽带&#xff0c;结果慢得要死&#xff0c;还动不动弹出各种各样的广告&#xff0c;然后这时你又杀毒&#xff0c;又去清内存&#xff0c;结果…