Я использую последнюю версию Angular (7.x.x).
У меня есть JSON API в виде:
{
"objectA": {
"a": {
"aa": "hello",
"ab": "xyz"
},
"b": null,
"c": {
"ca": null,
"cb": null,
"cc": null,
"cd": "hi",
"ce": null,
"cf": null
}
},
"objectB": {
"a": {
"aa": "hey",
"ab": "abc"
},
"b": null,
"c": {
"ca": null,
"cb": null,
"cc": null,
"cd": null,
"ce": null,
"cf": null
}
}, ...}
Все мои объекты имеют одинаковую структуру. Теперь я хочу отобразить их в объект машинописного текста.
Моя модель выглядит так:
export interface MyObject {
name: string;
a: A;
b?: any;
c: C;}
export interface C{
ca?: any;
cb?: any;
cc?: any;
cd?: any;
ce?: any;
cf?: any;}
export interface A {
aa: string;
ab: string;
ac?: string;}
Как я могу получить имя объекта типа "objectA" в переменную "name" интерфейса "Object". В результате я хочу вернуть массив объектов.
Мой сервис:
getResults(): Observable<MyObject[]> {
return this.http.get<MyObject[]>(this.url, {
headers: this.headers
})
Мой компонент:
ngOnInit() {
this.getObjects();}
getObjects(): void {
this.service.getResults()
.subscribe(data=> {
this.objects= data;
});}
Кто-нибудь может мне помочь? Заранее спасибо.