将隐藏属性绑定到变量时,它可以工作,但在ngFor
值的循环中进行插值绑定时,则无法工作。
我已经尝试过[hidden] =“!((column.key)}”和hidden =“!{{column.key}}”“和hidden =” {{!column.key}}“”不能那样工作,但是直接绑定到类似[hidden] =“!name”的变量时有效 名称是我的布尔变量之一。
<table mat-table [dataSource]="dataSource">
<ng-container matColumnDef="{{column.key}}" *ngFor="let column of displayedColumns">
<th mat-header-cell *matHeaderCellDef [hidden]="!(column.key)"> {{column.key}} </th>
<td mat-cell *matCellDef="let element" [hidden]="!(column.key)"> {{element[column.value]}} </td>
</ng-container>
</ng-container>
<tr mat-header-row *matHeaderRowDef="columnsToDisplay"></tr>
<tr mat-row *matRowDef="let row; columns: columnsToDisplay;"></tr>
</table>
隐藏属性应该像这样工作,因为column.key
与变量名具有相同的值。
答案 0 :(得分:0)
您可以使用*ngIf
代替[hidden]
。
*ngIf="!(column.key)"
将起作用