$set
添加或修改对象属性和属性值
$delete
删除对象属性
html
<div id="div1">
<button @click="doUpdate">修改属性</button>
<button @click="doAdd">添加属性</button>
<button @click="doDelete">删除属性</button>
<hr>
<h2>{{user.name}}</h2>
<h2>{{user.age}}</h2>
</div>
js
data () {
return {
user:{
id: 1,
name: 'John',
}
}
},
methods: {
doUpdate(){
this.user.name = 'Tom';
},
doAdd(){
//this.user.age = 18; //通过普通方式为对象添加属性时vue无法实时监视到
//this.$set(this.user,'age',23); //可以实时监控更新信息
if (this.user.age) {
this.user.age++;
}else{
this.$set(this.user,'age',23); //第二种方式
}
},
doDelete(){
if (this.user.age) {
this.$delete(this.user,'age');
}
}
}