如果不是,Angular 2(v6)内联吗?

时间:2018-09-12 11:47:08

标签: angular angular6 angular-filters

我使用角材料表。并在表格中显示列列表(displayedColumns)。

我需要使用“日期”过滤器({{element[column] | date}})来显示“生日”列,但让其他列保持原样。我怎么说,如果column ==“ birthday”然后应用过滤器“ date”?

<ng-container matColumnDef="{{column}}" *ngFor="let column of displayedColumns">
  <th mat-header-cell *matHeaderCellDef> {{column}} </th>
  <td mat-cell *matCellDef="let element"> {{element[column]}} </td>
</ng-container>

2 个答案:

答案 0 :(得分:2)

尝试:

<ng-container matColumnDef="{{column}}" *ngFor="let column of displayedColumns">
  <th mat-header-cell *matHeaderCellDef> {{column}} </th>
  <td mat-cell *matCellDef="let element"> {{column === 'birthday' ? (element[column] | date) : element[column]}} </td>
</ng-container>

答案 1 :(得分:1)

您可以创建自己的管道,以检查column并适当显示element,也可以只进行三元检查:

{{column !== "birthday" ? element[column] : element[column] | date}}