Я звоню в API publi c, который возвращает следующую структуру JSON:
{
"meta": {
"xyz": "abc123"
},
"events": [
{
"event_id": "ggldfgsdl343409534095kgdflkgdslk",
"event_name": "Event 1",
},
{
"event_id": "214732hdfghdfghj43348fgdfgkjfdkf",
"event_name": "Event 2",
},
{
"event_id": "35345dsfgdgkjdfgdkjg49343djfgdfk",
"event_name": "Event 3",
}
]
}
Я создал класс с именем Event:
export class Event {
eventId: String;
eventName: String;
}
Здесь это вызов API в моем EventService:
getEvents(): Observable<Event[]> {
return this.http.get<Event[]>(this.eventApiUrl, this.httpOptions);
}
Мне известно о нескольких вещах:
- Имена свойств моего класса не совпадают с именами свойств в JSON response.
- Единственный способ, которым это будет работать, как показано выше, - это если имена свойств совпадают с именами свойств в JSON и API возвращает массив объектов напрямую
- Я думаю, что мне нужно использовать pipe (map ()), но не могу заставить его работать
Я хотел бы знать, как я могу перейти на один уровень вниз к массиву "events" и вернуть список объектов в нем как Event [] при учете несоответствия имени свойства.