生命周期

beforeCreate:         组件实例刚被创建,无属性
created:              组件实例创建完成,有属性,没有DOM(el没有被挂载),data已经完成,el生成了,还没有挂载。

beforeMount:          模板编译之前,有DOM,并没有把DOM挂载
mounted:              模板编译之后,数据都加载到页面上

beforeUpdate:         组件更新之前,数据已经更新了,但是没有挂载
updated:              组件更新之后,数据已经更新了,并且挂载

activated:            keep-alive,组件被激活时
deactivated:          keep-alive,组件被激活完成

beforeDestroy:        销毁之前,实例仍然完全可用
destroyed:            销毁完成,调用后,Vue 实例指示的所有东西都会解绑            定,所有的事件监听器会被移除,所有的子实例也会被销毁
             
执行了destroy操作,原来样式保留,后续就不再受vue控制了。
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>生命周期钩子函数</title>
		<script src="js/vue.min.js"></script>
	</head>
	<body>
		<div id="app">
			{{msg}}
			{{obj}}
			{{objn}}
			<button id="btn">更新</button>
			<button id="btn2">销毁</button>
		</div>
		<script>
			var vm=new Vue({
				el:"#app",
				data:{
					msg:"111",
					obj:{name:"lili"},
					objn:{name:"lisa"}
				},
				// beforeCreate(){//组件实例刚被创建,无属性
				// 	console.log(this.$el);
				// 	console.log(this.msg);
				// },
				// created(){//组件实例创建完成,有属性,没有DOM(el没有被挂载),data已经完成,el生成了,还没有挂载。
				// 	console.log(this.$el);
				// 	console.log(this.msg);
				// 	this.obj["joba"]="ceoa";
				// },
				// beforeMount(){//模板编译之前,有DOM,并没有把DOM挂载
				// 	console.log(this.$el);
				// 	console.log(this.msg);
				// 	this.obj["job"]="ceo";
				// },
				// mounted(){//模板编译之后,数据都加载到页面上
				// 	console.log(this.$el);
				// 	console.log(this.msg);
				// 	this.obj["age"]=18;
				// },
				beforeUpdate(){//组件更新之前,数据已经更新了,但是没有挂载
					console.log(this.msg);
					if(this.msg<100){
						this.msg=110;
					}
				},
				updated(){//组件更新之后,数据已经更新了,并且挂载
					console.log(this.msg);
				},
				beforeDestroy(){//销毁之前,实例仍然完全可用
					console.log(this.msg);
				},
				destroyed(){//销毁完成,调用后,Vue 实例指示的所有东西都会解绑定,所有的事件监听器会被移除,所有的子实例也会被销毁
					console.log(this.msg);
				}
			})

		    var btn = document.getElementById("btn");
			btn.onclick=function(){
				vm.msg=18;
			}
			
			var btn2= document.getElementById("btn2");
			btn2.onclick=function(){
				vm.$destroy();
			}
		</script>
	</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值