【发布时间】:2018-06-14 05:34:41
【问题描述】:
我有这个从 http 请求返回的 json
[
{
"player": {
"1100": {
"name": "Andy",
"position": "Keeper"
},
"1927": {
"name": "Cole",
"position": "benchwarmer"
},
"2399": {
"name": "Derrick",
"position": "Striker"
},
"2900": {
"name": "Cole",
"position": "normal supporter"
}
},
"substitutions": [
{
"playerin": 1100,
"playerout": 1927,
"time": 58
},
{
"playerin": 2399,
"playerout": 2900,
"time": 58
}
]
}
]
这是我的ts
Object = Object;
this.http.get('http://example.com/example.php?matchid='+this.matchId)
.map(res => res.json())
.subscribe(res => {
this.substitutes = res[0].substitutions;
this.players = res[0].players;
});
在循环替换时,我希望它显示玩家姓名也从中获取,我需要将 playerin playerout 数据更改为对象,但未能这样做。这是我返回未定义玩家的示例失败代码
//failed 1
<div *ngFor="let subH of substitutes">
{{players[subH.playerin].name}}
</div>
//failed 2
<div *ngFor="let subH of Object.keys(substitutes)">
{{players[subH.playerin].name}}
</div>
我怎样才能实现它?
【问题讨论】:
-
res根据您的 json 似乎是一个数组,而不是一个对象 -
我的坏@SurajRao,我已经编辑了它,因为它是从原始文件复制粘贴编辑以简化它。问题是我不能调用 player[subH.playerin] 因为 playerin 还不是一个对象。这也是我想的可能是错的
-
@SurajRao 不,完全不同
-
ok,你能把all的相关代码加进去吗?