vue现有的对象动态的添加属性:
例如有数据 :
data(){
return {
userInfo:{ age:99 }
}
}
如果在函数或者计算属性中为userInfo添加name属性, 我们可能会
this.userInfo['name'] = 'hangzhou';
这种方式添加的属性在页面中使用时,是无法被双向绑定的,也即是当该属性发生变化时,页面不会发生更新。
解决:
在首次定义该属性时使用this.$set();方法,即可将该属性添加到Vue的监听中。
this.$set(this.userInfo, 'name', 'hangzhou');