我已经可以使用数组定义列,但是我想隐藏一个列,但是在服务运行之后,我想要显示它。我尝试了以下但表格没有更新:
columnsToShow.push("someColumn")
我的表中有定义:
<mat-table>
<ng-container matColumnDef="someColumn">
<mat-header-cell *matHeaderCellDef>...</mat-header-cell>
<mat-cell *matCellDef="let item">...</mat-cell>
</ng-container>
</mat-table>
但该列永远不会出现。
答案 0 :(得分:1)
使用mat-header-row
更新标题:
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
<mat-row *matRowDef="let row; columns: displayedColumns;"></mat-row>
在Component类中根据需要更新displayedColumns
:
displayedColumns = ['position', 'name', 'weight', 'symbol'];
通过更改提供给行的列列表,您可以轻松实现 重新订购并动态包含/排除列。