我是vue的新手,无法找到解决方案 -
我这里有一个JSON对象,我正在尝试根据用户的" userRegion"动态获取用户的" info" 。 即可。
{
"userData": {
"kr": {
"info": {
"name": "testing-123",
}
},
"any": null,
"us": null,
"eu": {
"info": {
"name": "testing-456",
}
},
},
"userRegion": "eu"
}
然后我在vue中有这个对象,我想动态地改变区域并根据" user"中的这个区域值从对象中提取数据。对象如下。
user:{
region: this.userData.userRegion,
name: this.userData[this.user.region].info.name
},
例如,我尝试过使用类似的东西
this.userData.userData[this.user.region]
但是我收到了错误:
TypeError: Cannot read property 'region' of undefined"
我正在使用的变量" userData"从父母那里传递下来:
<infoWindow :userData='userData'></infoWindow>
并设置为道具:
props: {
userData: app.userData,
},
任何帮助都会被指定,谢谢
答案 0 :(得分:1)
我真的不明白你在哪里设置这个slice
,无论它是初始化数据对象的一部分还是计算属性。但是,那里存在一个时间问题:
user
要设置user: {
region: this.userData.userRegion,
name: this.userData[this.user.region].info.name
},
,user.name
需要已经存在。但是,由于您一次创建user.region
对象,这不起作用。因此,您必须将其拆分,或者再次重复用户区域的逻辑:
user