我想显示一个简单的玩家列表。现在我从后端服务器获取一个玩家列表。现在可以回来玩家或 SpecialPlayers (从玩家继承)。
现在我想在列表中显示" 播放器"当它的播放器和" SpecialPlayer "当它是一个特殊播放器时,我认为我可以通过该代码实现它:
export class Player {
name: string;
mode: string;
constructor() {
this.mode="Player";
}
}
export class SpecialPlayer extends Player{
constructor() {
super();
this.mode="SpecialPlayer";
}
}
这就是我的名单:
<table width="100%">
<tr *ngFor="let player of players">
<div>{{player.name}}</div>
<div>{{player.mode}}</div>
</tr>
</table>
因此显示名称,但模式不显示(或显示但没有内容)...
对我的后端服务器的调用:
loadPlayers(): void {
this.auth.loadPlayers().subscribe(
data => {
this.players= data;
});
}
感谢您的帮助!
答案 0 :(得分:1)
您需要从Player
扩展SpecialPlayer类class SpecialPlayer extends Player
答案 1 :(得分:1)
问题是使用http客户端你的对象实际上不是你的类,它只是一个只支持原生类型的json对象。
您有责任根据从服务器收到的内容在客户端构建它。
更新 - 您必须手动映射结果。我所知道的最简单的方法是使用带有部分参数的构造函数。