vue的生命周期详解

物理删除与逻辑删除 逻辑删除 阅读详情

直接上代码

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>vue生命周期</title>
</head>
<body>
<div id="app">
<p>{{message}}</p>
<keep-alive>
<my-components :msg="'hello'" v-if="show"></my-components>
</keep-alive>
<button @click="changs()">点击改变数据</button>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script>
<script>
let child = {
template: '<div>from child: {{msg}}</div>',
props: ['msg'],
data () {
return {
childMsg: 'child'
}
},
deactivated () {
console.log('component deactivated!')
},
activated () {
console.log('component activated')
}
}
var app = new Vue({
el: '#app',
data () {
return {
message: 'father',
show: true
}
},
beforeCreate () {
console.log('beforeCreate 创建前的状态==========》')
let state = {
'el': this.$el,
'data': this.$data,
'message': this.message
}
console.log(state)
},
created () {
console.log('created 创建完毕状态===========》')
let state = {
'el': this.$el,
'data': this.$data,
'message': this.message
}
console.log(state)
},
beforeMount () {
console.log('beforeMount 挂载前的状态========》')
let state = {
'el': this.$el,
'data': this.$data,
'message': this.message
}
console.log(this.$el);
console.log(state)
},
mounted () {
console.log('mounted 挂载结束状态=========》')
let state = {
'el': this.$el,
'data': this.$data,
'message': this.message
}
console.log(this.$el)
console.log(state)
// this.message = 'change';
},
beforeUpdate () {
console.log('beforeUpdate 更新前的状态===========》')
let state = {
'el': this.$el,
'data': this.$data,
'message': this.message
}
console.log(this.$el)
console.log(state)
console.log('beforeUpdate == ' + document.getElementsByTagName('p')[0].innerHTML);
// this.message = 'change2';
},
updated () {
console.log('updated 更新完成状态=========》')
let state = {
'el': this.$el,
'data': this.$data,
'message': this.message
}
console.log(this.$el)
console.log(state)
console.log('updated == ' + document.getElementsByTagName('p')[0].innerHTML);
// this.message = 'change3';
},
beforeDestroy () {
console.log('updated 销毁前状态=========》')
let state = {
'el': this.$el,
'data': this.$data,
'message': this.message
}
console.log(this.$el)
console.log(state)
},
destroyed () {
console.log('updated 销毁完成状态=========》')
let state = {
'el': this.$el,
'data': this.$data,
'message': this.message
}
console.log(this.$el)
console.log(state)
},
methods: {
changs () {
this.message = 'change'
}
},
components: {
'my-components': child
}
})
</script>
</body>

</html>

打开谷歌浏览器,按f12看下console就差不多明白了

比较常用的是:

beforecreate:可以在这里加一个loading事件

created:在这里结束loading,可以发起后端请求,拿回数据放入data

mounted:这里可以对dom的一些操作,比如说监听滚动条来到达吸顶的效果等等


代码实现 —— 基于 STM32 的可见光通信系统课程设计 基于STM32F103ZET6,源码如需移植,需要修改定时器捕获通道引脚,及定时器,如果你也有这个课设任务,希望对你有所帮助。 阅读详情

相关推荐

工业相机与ABB机器人Socket通信实战:手把手教你用RobotStudio 6.08搭建视觉引导工作站

本文详细介绍了工业相机与ABB机器人通过Socket通信实现视觉引导工作站的实战教程。使用RobotStudio 6.08平台,涵盖工作站搭建、坐标系标定、RAPID代码开发及TCP/IP通信配置,特别解析了欧拉角与四元数转换等关键技术难点,助力智能制造产线升级。

weixin_42531516的博客 409

VUE2生命周期

vue生命周期: 创建前beforeCreate创建前的阶段,这个时候data中的数据还未被定义所以不能使用 创建后created最早开始使用data和methods中数据的钩子函数 挂载前beforeMount指令已经解析完毕内存中已经生成dom树还没渲染到本地 挂载后mounteddom已经渲染完毕最早可以操作DOM元素钩子函数 更新前beforeUpdate当data的数据发生改变会执行这个钩子内存更新但是DOM节点还未更新 更新后updated数据更新完成以...

weixin_58462431的博客 279

MATLAB打开.m文件乱码解决办法

Matlab打开.m文件出现中文乱码问题,是因为Matlab存在两种编码格式:GBK和UTF-8,而不同版本的Matlab编码格式可能不统一,因此在不同版本的Matlab打开文件,由于编码格式的改变,会导致注释乱码。 1.查看你的Matlab的文件编码方式,在Matlab的命令行窗口输入feature('locale') ,如下图,可以看到默认编码为GBK,那问题就变成了将Matlab的文件编码方式GBK修改成UTF-8; 2.找到你的Matlab安装目录bin文件夹下的lcdata_utf.

zhugby的博客 4万+

Vue生命周期详解

一、生命周期的概念 生命周期,顾名思义就是一个vue组件从 创建 到 销毁 的过程。 二、钩子函数 Vue中有许多内置函数,是随着组件生命周期阶段自动执行的。我们可以通过钩子函数来在特定的某个生命周期的阶段执行特定的操作,比如能够在 created 中发起 ajax 请求,从而能够初始化 data 数据渲染页面。 生命周期可以分为四个阶段: 初始化阶段 挂载阶段 更新阶段 销毁阶段 每个阶段又有相对应的方法,分别为:...

AI_huihui的博客 3330

自绘CListCtrl时发现ON_WM_MEASUREITEM_REFLECT和DrawItem(LPDRAWITEMSTRUCT lpMeasureItemStruct) 无响应

自绘CListCtrl时发现ON_WM_MEASUREITEM_REFLECT和DrawItem(LPDRAWITEMSTRUCT lpMeasureItemStruct) 无响应 一般情况下,我们都是在 dialog 里面 放一个 list 控件,然后 用自己的类绑定自己的自绘对象,如同下面: 1.  在 dialog 里面 加一个 list 列表 2. 然后 绑定这个列表 哈哈...

mfreesky的专栏 2171

UE5.5使用ControlRig实现MetaHumanNPC看向玩家

本文介绍了在虚幻引擎中实现NPC自然看向玩家的技术方案。通过MetaHuman的ControlRig系统,采用面部动画曲线+全身动画Montage的表演方式,结合ControlRig驱动CTRL_lookat控制器实现视线追踪。

平常心 1302

Vue的生命周期的详解

Vue的生命周期 Vue的生命周期是每个使用Vue框架的前端人员都需要掌握的知识,以此作为记录。 Vue的生命周期就是vue实例从创建到销毁的全过程,也就是new Vue() 开始就是vue生命周期的开始。Vue 实例有⼀个完整的⽣命周期,也就是从开始创建、初始化数据、编译模版、挂载Dom -> 渲染、更新 -> 渲染、卸载 等⼀系列过程,称这是Vue的⽣命周期。钩子函数是Vue生命周期中每个阶段对外开放让程序员操作Vue的接口。Vue有8个钩子函数,分别为: beforeCreate( 创建前

weixin_45791692的博客 14万+

在 SAP ECC 中定义 ledger 时遇到 “Define exactly one leading ledger“(消息号 FAGL_LEDGER_CUST012)的错误

摘要:SAP系统要求必须且只能定义一个主导分类账(Leading Ledger)。当出现错误消息FAGL_LEDGER_CUST012时,需通过事务码FINSC_LEDGER或SPRO路径检查分类账配置,确保仅有一个分类账被标记为"LeadingLedger",其余设为"Non-leadingLedger"。主导分类账是SAP默认用于标准报表的核心分类账,修改配置需谨慎以免影响已有数据。若问题未解决,建议检查未完成配置或查阅SAP Notes获取解决方案。

金牌架构师 802

【vue系列-05】vue的生命周期(详解)

深入理解vue的生命周期

zhenghuishengq的博客 1万+

别再用第三方黑盒库了!从零手写C#+YOLOv12推理全流程,框位准、可定制、调试快10倍

从零手写YOLO推理框架,不是为了造轮子,而是为了完全掌控代码,工业现场的需求千变万化,第三方黑盒库根本没法满足所有需求。这套代码我已经在东莞长安的3家PCB厂、深圳南山的2家3C电子厂落地了,稳定运行6个月,没有出过任何问题。如果有什么问题或者需要扩展的功能,都可以在评论区交流。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 328

创建 Qt Quick 项目

来看看如何使用 Qt Creator 创建 Qt Quick 项目!

青春不老,奋斗不止! 1万+

Vue声明与生命周期

【1】Vue声明式渲染、条件与循环、事件绑定、双向绑定 1、{{ message }} 2、v-if 3、v-for 4、v-on:click 5、v-model vue的生命周期 一共8个阶段 beforeCreate (创建前) created (创建后) beforeMount (载入前) mounted (载入后) beforeUpdate (更新前) updated (更新后) beforeDestroy (销毁前) destroyed (销毁后) vue第一次页面加载会触发的几个钩子函数

qq_39806431的博客 357

DB文件在编程中的作用及示例代码

通过使用DB文件,我们可以实现数据的持久化存储,并能够高效地进行数据的增删改查操作。在本文中,我们以SQLite数据库为例,演示了如何使用Python语言创建和操作DB文件的示例代码。在实际的编程中,我们可以根据具体的需求和使用的数据库系统来进行更复杂的操作和优化。通过使用DB文件,我们可以实现数据的持久化存储,确保数据在程序关闭后也能被保留,并且能够高效地进行数据检索和更新。在本文中,我们将探讨DB文件的作用,并提供一些示例代码展示如何在编程中使用DB文件。上述代码中,我们使用SQLite提供的。

CodeSpark的博客 1822

C语言 | 删除星号问题(删除所有;删除前边;删除后边;删除中间)

删除所有星号 例如,假设输入的字符串为*****ABC***DE***FG*****,删除串中的号后,字符串变为ABDEFG #include<stdio.h> int main() { char a[1000]; int i=0,n=0; gets(a); //输入字符串; while(a[i]!='\0') { if(a[i]!='*') { a[n]=a[i]; n++; i++; } ...

m0_63778374的博客 1万+

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

逻辑删除还是物理删除

看到标题,有的童鞋心中暗想“数据删除有什么可提的呢?不就是执行个delete语句吗?有什么难的呀?”其实呢数据删除没有你想的这么简单,一般情况下公司会明确的要求数据只能逻辑删除,不能物理删除。那什么优势逻辑删除,什么又是物理删除呢? 物理删除 就是我们之前常用的DELETE、TRANCATE、DROP语句删除数据,不管你用哪种方式,都是将数据从硬盘上抹除, 这样数据表的体积就变小了,数据的读写性能就提上去了。 有个共识InnoDB引擎的数据表记录一旦超过2000万,它的读写性能就很差,我们用物理删除能缩小表

weixin_44778952的博客 3483

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

redis惰性删除与异步删除

Redis提供了惰性删除和异步删除两种机制。惰性删除指过期的key不会立即删除,而是在访问时检查并删除,这是Redis的默认行为。异步删除通过UNLINK命令实现,它先逻辑删除key,再异步释放内存,避免DEL命令的同步阻塞问题。在redis.conf中,LAZY FREEING相关配置控制内存释放方式,如lazyfree-lazy-expire决定过期键的内存释放是否异步。惰性删除无法关闭,而异步删除可通过配置选择使用场景,如内存回收、过期处理等场景是否采用异步方式。

shuai的博客 1594

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

逻辑删除和物理删除的区别

一、逻辑删除 逻辑删除的本质就是修改操作,所谓的逻辑删除并不是真的删除, 而是在表中将对应的是否删除标识(is_delete)或者说是状态字段(status)做修改操作。 比如0是未删除,1是删除。在逻辑上数据是被删除了,但是数据本身依旧存在库里。 对应的sql语句: update 表名 set is_delete = 1 where id =1; 语句表示,在该表中将id为1的信息进行逻辑删除,那么客户端进行查询id为1的信息, 服务器就不会提供信息。如果想继续为客户端提供信息,可以把is_delete更

Passerby_one的博客 1万+

【删除】什么时候我们需要软删除

软删除又叫逻辑删除,标记删除,删除后数据还具有意义的数据才需要做软删除功能这种方式并不是真正的从数据库表中把记录删除,而是通过特定的标记方式标记此记录已被删除(在查询的时候过滤掉此记录),这样用户在界面上看起来就像是数据真的被删掉了,然而事实上却是库里还在。在表里添加布尔类型的字段,标记该记录是否被逻辑删除。在表里添加删除时间(默认为null),如果有删除时间则表示此记录被逻辑删除,和第一种方式大差不差。将逻辑删除的数据插入到另外一个表里。.........

weixin_44701862的博客 1584

Redis的删除策略,删除我是认真的

定时删除,每一个key都设置过期时间,每个key都用一个线程跟踪,当这个key过了过期时间,该线程就将这个key删除;但是当key的数量很大时,就会有很多线程,CPU的占用量会非常大 public class DeletePolicy1 { // 模拟redis private static Map<String,String> redis = new HashMap&lt...

一边工作一边考研 3180

hive删除数据、删除分区、删除库表

hive删除数据、删除分区、删除库表 -- 删除库 drop database if exists db_name; -- 强制删除库 drop database if exists db_name cascade; -- 删除表 drop table if exists employee; -- 清空表 truncate table employee; -- 清空表,第二种方式 ...

紫眸的博客 10万+

MybatisPlus实现物理删除和逻辑删除(重点:逻辑删除)

首先看一下数据库中表的数据: 物理删除: 真实删除,将对应数据从数据库中删除,之后查询不到此条被删除数据 1、根据 ID 删除记录 //根据ID删除记录(物理删除) @Test public void testDeleteById(){ int result = userMapper.deleteById(1L); System.out.println(result); } 运行,看数据库中 user 表中 id 为 1 的数据是否被删除 2、批量删除 //批量删除

于小猿的博客 2万+

C#当中如何Linq删除与批量删除

C#当中如何Linq删除与批量删除 文献种类:专题技术文献; 开发工具与关键技术:VS 作者:蛋蛋 .什么是删除? 删除: 指将已经不需要了的文件从系统的目录清单中删掉,以腾出磁盘空间给别的操作。在计算机中的大部分“彻底”删除就是将其从列表除名,并可以被其他文件覆写。所以误删之前请先确认一次,还有希望恢复! 在计算机中资料数据等都以文件形式存储,删除文件分为两种情况,一种叫"逻辑删除",另一种叫...

qq_42577408的博客 4103

openstack中的延迟删除、软删除、删除保护

glance镜像的延迟删除 用法 glance-api.conf中打开延迟删除开关 [html] view plaincopy # Turn on/off delayed delete  delayed_delete = False    # Delayed delete time in seconds  scrub_time = 43200   删除

openstack技术博客 2574

VUE前端删除和批量删除

在element ui的el-table 我们需要先写出删除按钮接下来就可以在methods 中定义出这个方法了methods: {this.$confirm("此操作将删除信息, 是否继续?", "提示", {confirmButtonText: "确定",

weixin_46645338的博客 1万+

删除操作及逻辑删除

逻辑删除的字段,查询时显示为空,不存在!其实数据库中仍显示存在该数据。类似回收站逻辑删除好处:管理员可以查看被删除的记录,防止数据的丢失。

酷小亚 3478

物理删除和逻辑删除

物理删除和逻辑删除1、物理删除2、逻辑删除 以前一直就以为数据库中的删除就是指delete语句(纯小白的认知),现在知道数据库中的删除主要有物理删除和逻辑删除,物理删除是从数据表中真的将记录剔除掉,不会再保留,无法再查询到,也就是通过delete语句删除。而逻辑删除并不会真的从表中剔除数据,而是使用一个标记字段,进行逻辑删除时只需更新这个标记字段的值就行了,查询时附带这个字段值作为限制就可以达到删除的目的。 1、物理删除 delete from people where id = 13; 执行后的表:

qq_42640067的博客 4571
上一篇: vscode 新建vue模板步骤
下一篇: mockJs模拟数据在vue中的的用法
m_uncle
博客等级 码龄9年 11粉丝 46原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值