我得到了第一个元素列表,我在服务视图中显示这些元素。但是在我获得数组后,我需要使用新的promise的结果更新内部元素,但这不起作用。请参阅随附的plnkr以查看问题。 这是服务访问:
this.teamsService.getTeams()
.then(teams=> {
teams.forEach(team => team.name =
this.namesService.getName(idx++));
this.teams = teams
});
这是观点:
<div *ngFor="let team of teams">
<p>Team {{team.name.value}}</p>
</div>
答案 0 :(得分:3)
问题在于你试图将promises直接绑定到视图,并且它不会像那样工作,因为“某些东西”需要解析这些promise以获得结果.Angular有一个名为“async”的管道来解析observables和承诺,所以我在这里使用异步管道编辑你的plunkr将解析名称。另外,idx应该从1开始而不是0我猜是因为你的名字数组没有任何id == 0的团队。 你的主要问题是这部分
{{(team.name | async)?.value}}