Vue的生命周期

生命周期介绍

Vue 实例从创建到销毁的过程,就是生命周期。也就是从开始创建、初始化数据、编译模板、挂载Dom→渲染、更新→渲染、卸载等一系列过程,我们称这是 Vue 的生命周期。
简单说就是一个组件从开始到最后消亡所经历的各种状态,就是一个组件的生命周期。

vue生命周期有什么作用

它的生命周期中有多个事件钩子,让我们在控制整个Vue实例的过程时更容易形成好的逻辑。

Vue的生命周期流程图  图片来自网络

beforeCreate(创建前)

介绍:实例初始化之后,组件被创建时,这时候 el,data,message 都是 underfined

created(创建后)

介绍:实例创建完成后,data、methods 被初始化

beforeMount(载入前)

介绍:完成el和data初始化,在挂载开始之前被调用。可以发送数据请求

mounted(载入后)

介绍:vue实例已经挂载到页面中

获取 el 中 DOM 元素,进行 DOM 操作;如果返回的数据操作依赖 DOM 完成,推荐这个时候发送数据请求

beforeUpdate(更新前)

介绍:数据更新时调用

挂载完成之前访问现有DOM,比如手动移除已添加的事件监听器;也可以进一步修改数据

updated(更新后)

介绍:由于数据更改,重新渲染时调用

可执行依赖与DOM的操作

beforeDestory(销毁前)

介绍:实例销毁之前调用

实例销毁之前,执行清理任务,比如:清除定时器等

destoryed(销毁后)

介绍:vue实例销毁后调用。调用后,Vue实例指示的所有东西都会被解绑定,所有的事件监听器会被移除,所有的子实例也会被销毁
提示已删除。

生命周期代码执行效果

<script type="text/javascript">
			let helloCom = Vue.component("hello-com",{
				template:'<div><h1>{{laochen}} </h1><button @click="changeData">修改数据</button></div>',
				data:function(){
					return {
						laochen:"hello laochen"
					}
				},
				methods:{
					changeData:function(){
						this.laochen = "hello 小明"
					}
				},
				beforeCreate() {
					console.log('beforeCreate')
					// 此时数据data和事件方法methods还未绑定到app对象上
				},
				
				created() {
					console.log('created')
					// 数据data和方法methods绑定到应用对象app上
					
					
				},
				beforeMount(){
					//渲染之前,根据数据生成的DOM对象是获取不到的
					console.log('beforeMount')
				},
				mounted(){
					console.log('mounted')
					//渲染之后,可以获取数据生成的DOM对象
					
				},
				beforeUpdate() {
					//数据更改,但内容未更改之前
					console.log('beforeUpdate')
				},
				updated() {
					//内容已更新完毕
					console.log('update')
				},
				beforeDestroy() {
					//应用销毁之前
					console.log("beforeDestory")
				},
				destroyed(){
					//应用销毁之后
					console.log("Destory")
				}
			})
			let app = new Vue({
				el:"#app",
				data:{
					isShow:true
				}
			})
		</script>

页面运行效果

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值