<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="https://cdn.bootcss.com/vue/2.3.3/vue.js"></script>
</head>
<body>
<div id="box">{{msg}}</div>
<script type="text/javascript">
//Vue的生命周期
var vm=new Vue({
el:"#box",
data:{msg:"吴师傅"},
//创建前
beforeCreate:function(){
console.group("-----Vue创建前-------");
console.log(this.$el); //没有值
console.log(this.$data); //没有值
console.log(this.msg); //没有值
},
created:function(){
console.group("-----Vue创建后-------");
console.log(this.$el); //没有值
console.log(this.$data); //有值了
console.log(this.msg); //有值了
},
beforeMount:function(){
console.group("-----Vue装载前(渲染)-------");
console.log(this.$el); //{{msg}}没有被赋值,但已有页面元素
console.log(this.$data); //有值了
console.log(this.msg); //有值了
},
mounted:function(){
console.group("-----Vue装载后(渲染)-------");
console.log(this.$el); //{{msg}}被装载,已有值
console.log(this.$data); //有值了
console.log(this.msg); //有值了
},
beforeUpdate:function(){
console.group("-----Vue数据被更新前-------");
console.log(this.$el); //控制台直接更新值之后,直接更新了
console.log(this.$data); //有值了
console.log(this.msg); //有值了
},
updated:function(){
console.group("-----Vue数据被更新后-------");
console.log(this.$el); //控制台直接更新值之后,直接更新了
console.log(this.$data); //有值了
console.log(this.msg); //有值了
},
beforeDestroy:function(){
console.group("-----Vue销毁前-------");
console.log(this.$el); //无变化
console.log(this.$data); //无变化
console.log(this.msg); //无变化
},
destroyed:function(){
console.group("-----Vue销毁后-------");
console.log(this.$el); //无变化
console.log(this.$data); //无变化
console.log(this.msg); //销毁后就没有msg了,也无法更改
}
});
</script>
</body>
</html>