Object 如何在VUE.js中更改对象值 导出默认值{ 数据(){ 返回{ a:{} }; }, 方法:{ //可以从后端获取数据的函数 getdata(){ someAPI.getdata.then(响应=>{ //管理这些数据 for(设i=0;i

Object 如何在VUE.js中更改对象值 导出默认值{ 数据(){ 返回{ a:{} }; }, 方法:{ //可以从后端获取数据的函数 getdata(){ someAPI.getdata.then(响应=>{ //管理这些数据 for(设i=0;i,object,vue.js,Object,Vue.js,在这个函数中,我更改了data.com中的a对象,但在另一个函数中,我希望console.log进行监视。如果我console.log(this.a)我可以得到整个对象 {'Peter':[ {'age': 11, 'grade': '9'},{'age': 12, 'grade': '9'}, ],'Wong':[{'age': 13, 'grade': '9'}, {'age': 14, 'grade': '9'},]} 但是如果我console.log(this.a['Peter'])或

在这个函数中,我更改了data.com中的a对象,但在另一个函数中,我希望console.log进行监视。如果我
console.log(this.a)
我可以得到整个对象

{'Peter':[
{'age': 11, 'grade': '9'},{'age': 12, 'grade': '9'},
],'Wong':[{'age': 13, 'grade': '9'}, {'age': 14, 'grade': '9'},]}
但是如果我
console.log(this.a['Peter'])
或者
console.log(this.a.Peter)
那么我会得到一个空对象,但是为什么呢? 我已经使用了
这个.$set
,但它不起作用

this.$set(this.student,"age", 24)

像这样

使用
this.$set(this.a,'peter',[…])
而不是
this.a['peter']=…
我在
getdata
中看到,您将对象分配给了
this.a['peter']
,但在问题的最后,您尝试通过'this.a['peter']访问。只是打字错误吗?因为js对象中的键是区分大小写的。我使用了这个。$set,但不起作用。你的示例是无序的。组织起来后,我注意到问题可能是什么。您无权访问
数据
(并且
也丢失)。此函数为您创建Vue数据,您将引用它。a我的意思是,您有一个类似于
if((data[I][“name”]=“Peter”){}
的结构,它不是测试表达式,而是赋值表达式。