Предположим, у меня был API, который возвращает следующую структуру JSON:
{
"Response": {
"status": {
"code": "SUCCESS",
"message": "owner found",
"count": "1"
},
"owners": [
{
"ownerId": "12345",
"name": "Example Person",
"cars": [
{
"make": "Toyota"
"year": "2004"
"model": "Camry"
}
]
}
]
}
}
Я хочу отобразить эту структуру json в эти модели машинописи:
export class ApiResponse{
constructor(
public status: Status,
public owners: Owner[]
) {}
}
export class Status {
constructor(
public code: string,
public message: string,
public count: number
) {}
}
export class Owner{
constructor(
public ownerId: number,
public name: string,
public cars: Car[]
) {}
}
export class Car{
constructor(
public make: string;
public year: string;
public model: string;
)
}
Из моего понимания угловых7, вы можете использовать pipe и map из rxjs для достижения этого:
this.http.get(url).pipe(
map((data: any[]) => data.map((item: any) => new ApiResponse(
new Status(
item.status.code,
item.status.message,
item.status.count),
...
Используя это, я могу отобразить объект JSON, но я не уверен, как подходить к отображению массивов и вложенных массивов.
Как мне подходить к отображению JSON с вложенными массивами?