拆分 Angular 材质表的一列
Posted
技术标签:
【中文标题】拆分 Angular 材质表的一列【英文标题】:Split a column of Angular Material Table 【发布时间】:2021-11-04 00:58:34 【问题描述】:我正在尝试创建一个自定义 Angular 材料表,更准确地说,将一列拆分为 5 列,如下所示:
No、Name、Weight 和 Symbol 的第一行(共 5 列)代表表格的标题。如何将符号列拆分为 5 列? 我的代码是来自 Angular Material 的代码:
<div class="mat-elevation-z8">
<table mat-table [dataSource]="dataSource">
<!-- Position Column -->
<ng-container matColumnDef="position">
<th mat-header-cell *matHeaderCellDef>No.</th>
<td mat-cell *matCellDef="let element"> element.position </td>
</ng-container>
<!-- Name Column -->
<ng-container matColumnDef="name">
<th mat-header-cell *matHeaderCellDef>Name</th>
<td mat-cell *matCellDef="let element"> element.name </td>
</ng-container>
<!-- Weight Column -->
<ng-container matColumnDef="weight">
<th mat-header-cell *matHeaderCellDef>Weight</th>
<td mat-cell *matCellDef="let element"> element.weight </td>
</ng-container>
<!-- Symbol Column -->
<ng-container matColumnDef="symbol">
<th mat-header-cell *matHeaderCellDef>Symbol</th>
<td mat-cell *matCellDef="let element"> element.symbol </td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns"></tr>
</table>
<mat-paginator [pageSizeOptions]="[5, 10, 20]" showFirstLastButtons aria-label="Select page of periodic elements"> </mat-paginator>
</div>
【问题讨论】:
请查看here 【参考方案1】:这周我不得不做类似的事情,我组建了一个 Stackblitz 来玩玩,并有一些可能有用的工作?
https://stackblitz.com/edit/generic-mat-table-kji9ey?file=src%2Fapp%2Fapp.component.html
关键似乎是为结果列配置带有 colspan 和 rowspan 属性的两个标题行
这个答案也很有用: https://***.com/a/59626423/2928193
【讨论】:
以上是关于拆分 Angular 材质表的一列的主要内容,如果未能解决你的问题,请参考以下文章
如何仅过滤dataTable angular中的一列[重复]
Angular 8 和 Angular 材质:使用 CdkDropList 项拖动滚动
Angular2 Material:Angular 材质输入的自定义验证