vue基础(四)生命周期

一、创建
1、beforeCreate组件创建前

2、created组件创建后
可在此方法中操作后端的数据,数据响应视图
应用:发起Ajax请求

<body>
	<div id="app">
		<App></App>
	</div>
</body>

new Vue({
	el:'#app',
	data(){
		return{}
	},
	components:{App}
});

var App={
	templatr:'<div><Test></Test></div>',
	components:{Test}
}

vat Test={
	data(){
		return{
			msg:'hello word'
		}
	 },
	 template:'<div><div>{{msg}}</div></div>',
 	 beforeCreate(){
 	 	console.log(this.msg)
 	 },
 	 created(){
 	 	console.log(this.msg)
 	 }
}

结果是:创建前:undefined
创建后:hello word
ps:创建前获取不到msg的值

二、挂载
1、beforeMount挂载数据到DOM前

2、mounted挂载后

//Test组件
beforeMount(){
	console.log(document.getElementById('app'))
},
mounted(){
	console.log(document.getElementById('app'))
}

结果是:挂载前:

<div id="app">
  	<app></app>
 </div>

挂载后:

<div id="app">
   <div>
   	<div>hello word</div>
   </div>
 </div>

三、DOM更新
1、beforeUpdate 获取原始DOM

2、updated 获取最新DOM

//Test组件
template:'<div><div>{{msg}}</div><button @click='changeText'>改变</button></div>',

methods:{
	changeText(){
		this.msg=this.msg+'哈哈哈'
	}
}

beforeUpdate(){
	 console.log(document.getElementById('app').innerHTML)
},
updated(){
	 console.log(document.getElementById('app').innerHTML)
}

结果是:DOM更新前:

 <div><div><div>hello word</div><button>改变</button></div></div>

DOM更新后:

 <div><div><div>hello word哈哈哈</div><button>改变</button></div></div>

四、销毁
1、beforeDestroy销毁前

2、destroyed销毁后

var App={
	data(){
		return{
			isShow:true
		}
	},
	template:'
		<div>
			<Test v-if='isShow'></Test>
			<button @click='isShow=!isShow'>改变生死</button>
		</div>
	'
}
beforeDestroy(){
 	console.log(‘beforeDestroy’)
},
destroyed(){
 	console.log(‘destroyed’)
}

销毁之后若再点击改变生死按钮,会重新渲染DOM

五、停用、激活
1、acltivated激活

2、deactivated停用

template:'
  <div>
  	<keep-alive>
  		<Test v-if='isShow'></Test>
  	</keep-alive>
   	<button @click='isShow=!isShow'>改变生死</button>
  </div>
 '
}

< keep-alive >缓存,防止重复渲染DOM

acltivated(){
 	 console.log(‘组件被激活了')
},
deactivated(){
 	 console.log(‘组件被停用了’)
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值