1.vue的数据无法实现响应式和监听变化原因

我今天又栽倒在这里花了2个小时,太惨烈了。
比如对象user{name: ‘tom’,age:10}中没有money这个属性的,
后来想添加money,就出现了数据没有即时更新的情况。
简单的赋值:this.user.money = 0(这样添加,数据不会被监听。)

原因:

1.页面加载完毕后,原来的数据结构中没有该属性。故无监听
2.在代码中动态添加该属性时,用了简单的赋值。故无监听

解决办法:

1.在原来的数据结构中,加入一个属性,属性的值可以是空,这样就可以占据一个位置。实现了监听。

user:{
name: 'tom',
age: 10,
money: 0
}

2.也可以在代码运行中,通过$set来添加,也可以实现监听。

this.$set(this.user,'money',0)