Я создал модель для данных, которые запрашиваю через GET, и я просто пытаюсь отобразить вывод из GET в массив этой модели (объект Player
).
Вот как выглядят возвращенные данные ответа, поступающие от API:
[
{
Id: 1
PlayerName: "Dave",
FirstSeason: 2013,
LastSeason: 2016,
BattingAverageRecord: [340, 210, 220, 300]
},
{
Id: 2
PlayerName: "Dennis",
FirstSeason: 2013,
LastSeason: 2016,
BattingAverageRecord: [230, 221, 312, 240]
},
{
Id: 3
PlayerName: "Mary",
FirstSeason: 2010,
LastSeason: 2013,
BattingAverageRecord: [330, 123, 151, 307]
}
];
Я создал модель для данных:
export class Player {
constructor(public Id: number,
public PlayerName: string,
public FirstSeason: number,
public LastSeason: number,
public BattingAverageRecord: number[])
{
this.Id = Id;
this.PlayerName = PlayerName;
this.FirstSeason = FirstSeason;
this.LastSeason = LastSeason;
this.BattingAverageRecord = BattingAverageRecord;
}
}
Теперь я ' я пытаюсь отобразить дату ответа в массив Players
:
retrievePlayer(): Observable<any> {
return this.http.get<Player[]>(this.playerAPI)
.pipe(
map(data => {
return new Player(data.Id, data.PlayerName, data.FirstSeason, data.LastSeason, data.GPARecord))
}
)
}
То, что я пробовал, явно неверно ... Я пытался сделать new Array(new Player(data.id ...))
, но я знаю, что это тоже неправильно.