vue的生命周期函数

  1. VUE的生命周期函数表示vue在实例化到销毁过程自动执行的函数

2.第一个生命周期函数beforeCreate,表示vue实例在完全创建之前自动执行的函数,这时data和methods还没有初始化

<div id="app">	
	<div id="name">{{name}}</div>
	<input type="button"  @click="changeName" value="change"/>		
</div>
	<script>
		var vm=new Vue({
			el:"#app",
			data:{
				name:"张三"
			},
			methods:{
				click(){
					console.log("click")
				},
				changeName(){
					this.name="李四"
				}
			},
			beforeCreate(){
				console.log("beforeCreate")//打印beforeCreate
//调用这个方法的时候,出现报错,不存在这个方法,因为methods还没有初始化
				  this.click() 
//调用这个数据的时候,打印输出显示name这个数据没有定义,因为data还没有初始化
				console.log(this.name)
			}
	</script>
				

3.第二个生命周期函数created(),是在data和methods已经初始化后自动调用,
如果想操作data数据和methods里的方法最好在这个时候


			beforeCreate(){
				console.log("beforeCreate")//打印beforeCreate
			},
			created(){
					console.log("created")//打印输出created
					this.click()//打印输出click
					console.log(this.name)//打印输出张三
			}
	</script>

4.第三个生命周期函数beforeMount()表示模板数据已经在内存编译好了,还没有渲染到页面中去

			beforeCreate(){
				console.log("beforeCreate")//打印beforeCreate
			},
			created(){
					console.log("created")//打印输出created
					this.click()//打印输出click
					console.log(this.name)//打印输出张三
			},
			beforeMount(){
				console.log("beforemount")//打印beformount
				this.click()//打印输出click
				console.log(this.name)//打印输出张三
				//打印{{name}},这说明数据还没有渲染到页面中去
				console.log(document.getElementById("name").innerHTML)
			}
	</script>

5.第四个生命周期函数Mount()表示模板数据已经在内存编译好了,而且数据已经渲染到页面中去了,这时候vue实例化完毕了,这是vue最后一个实例化的函数

			mounted(){
				console.log("mounted")//打印mounted
				//打印张三,这说明数据已经渲染到页面中去了
				console.log(document.getElementById("name").innerHTML)
			}
	</script>

6.第五个生命周期函数, beforeDestroy()表示页面数据还没有被更新但是data里的数据集已经被更新

	
			beforeUpdate(){
				//当点击changeName按钮的时候,改变name数据
				console.log("beforeUpdate")//打印beforeUpdate
				//打印输出李四,说明data的数据更新了
				console.log(this.name)
			
				//打印输出张三,这说明更新的数据还没有渲染到页面中去
				console.log(document.getElementById("name").innerHTML)
				
			}		
				
	</script>

7.第六个生命周期函数updated()表示改变数据的时候data的数据改变了而且已经更新的数据渲染到页面中去了

		updated(){
		//当点击changeName按钮的时候,改变name数据
			console.log("updated")//打印输出updated
			console.log(this.name)//打印李四
		//打印输出李四,这说明数据渲染到页面了
			console.log(document.getElementById("name").innerHTML)
					
		}
	</script>

8.第七个生命周期函数beforeDestroy()表示vue实例进入销毁阶段,但这是的data和methods等数据还能用

9.第八个生命周期destroyed()表示vue实例已经完全销毁,data等的数据已经不能使用了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值