テーブルにデータを表示するAngular2コンポーネントがあります。Angular2非同期のネストされたデータ
export class DiagnosisComponent {
headers: Array<String> = ["hello world", "hello world"];
table: Observable<TableData>;
constructor(private eventService: EventService) {
this.table = this.eventService.getDiagnosisEvents();
this.table.subscribe(console.log.bind(console));
}
}
そしてここTABLEDATAクラスは
あるexport class TableData {
content: Array<any>;
paging: Paging;
constructor(obj: any) {
this.paging = {
size: obj.size,
totalElements: obj.totalElements,
currentPage: 1
};
this.content = obj.content;
}
}
export interface Paging {
size: number;
totalElements: number;
currentPage: number;
}
今私は、非同期パイプで* ngForにtable.content配列をバインドします。私の問題は、TableData自体ではなく、ネストされたデータを取得する必要があることです。
<div class="row">
<vpscout-filter></vpscout-filter>
<table class="table">
<thead>
<tr><th *ngFor="let header of headers">{{header | translate}}</th></tr>
</thead>
<tbody>
<tr *ngFor="let row of table | async ">
<td>test</td>
</tr>
</tbody>
</table>
</div>
* ngForを<tr *ngFor="let row of table.content | async ">
に変更すると機能しません。
''行を(table | async).content'とするべきではありませんか? – jonrsharpe
@jonrsharpeあなたは本当に答えとしてこれらを提供すべきです(私はあなたがもうポイントを必要としないことは理解できますが、まだ..:P)。それは間違いなく解決策です。http://stackoverflow.com/a/35302622/5706293 – echonax