Хорошо, добавление данных меняет настолько, что я просто напишу другой ответ, а не переписываю. (И кстати, было бы неплохо, если бы вы могли поместить данные в пост, а не на скриншот).
Первая важная вещь: вы получаете ошибки TypeScript. Другими словами, компилируйте (или переносите, или собирайте) ошибки времени. TypeScript не знает, какие данные поступят от вызова API, и просто следует вашим объявлениям. Здесь:
getVehicles(): Observable<Vehicle[]> {
«Получите наблюдаемые массивы типа Vehicle». И когда вы затем пытаетесь получить доступ к data.vehicle
- это уже ошибка TS, потому что вы объявили совершенно другую структуру данных.
Фактическая структура выглядит примерно так:
interface IVehicleItem {
/* you fill it */
}
interface IVehiclesResponse {
vehicle: {
results: IVehicleItem[];
}
}
, тогда вы сможете без проблем
getVehicles(): Observable<IVehiclesResponse> {
return this.http.get<IVehiclesResponse> //...
.