我目前正在尝试实现材料设计表,但是它不显示任何数据。我尝试使用发现的here示例。它在页面上生成了一条垂直线:
当我在Chrome中打开开发人员工具并检查该元素时,我可以看到它正在为表生成行和标题,但是没有数据,如您在此处看到的:
“角度”视图中的代码如下:
<table mat-table [dataSource]="orders" matSort class="mat-elevation-z8">
<!-- Position Column -->
<ng-container matColumnDef="position">
<th mat-header-cell *matHeaderCellDef mat-sort-header> No. </th>
<td mat-cell *matCellDef="let element"> {{element.Id}} </td>
</ng-container>
<!-- Name Column -->
<ng-container matColumnDef="trackingNumber">
<th mat-header-cell *matHeaderCellDef mat-sort-header> Tracking number </th>
<td mat-cell *matCellDef="let element"> {{element.trackingNumber}} </td>
</ng-container>
<!-- Weight Column -->
<ng-container matColumnDef="total">
<th mat-header-cell *matHeaderCellDef mat-sort-header> Total </th>
<td mat-cell *matCellDef="let element"> {{element.total}} </td>
</ng-container>
<!-- Symbol Column -->
<ng-container matColumnDef="symbol">
<th mat-header-cell *matHeaderCellDef mat-sort-header> Created at </th>
<td mat-cell *matCellDef="let element"> {{element.createdAt}} </td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</table>
我正在按如下方式加载数据:
this.api.get('Order').then((data) => {
let json = JSON.parse(data);
this.orders = json;
this.hasLoaded = true;
});
答案 0 :(得分:1)
displayedColumns
似乎有问题,我将其更改为以下内容,现在可以使用了:
displayedColumns: string[] = ['position', 'trackingNumber', 'total', 'createdAt'];