加载数据时在mat表中隐藏行

Snæ*_*ørn 4 angular-material angular

我正在尝试在加载MatTable时隐藏其行。

我无法做到这一点:(有关完整代码,请参见StackBlitz

<div *ngIf="!isLoading">
  <tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</div>
Run Code Online (Sandbox Code Playgroud)

因为MatTable会引发各种错误:(

我不能放进去*ngIf="!isLoading"MatRow因为它已经有了结构指令。

我想避免CSS欺骗。

我没看到什么?请赐教。

Snæ*_*ørn 6

因此,使用“技巧” [hidden]

<tr mat-row *matRowDef="let row; columns: displayedColumns;" [hidden]="isLoading"></tr>

但是,我并没有最终使用此解决方案,因为它使表变得“跳跃”。相反,我选择在表格页脚中放置一个微调框。

  • 它不会生效。 (3认同)

Sac*_*aka 5

不能在一个元素上使用两个结构指令。用ng-container

<ng-container *ngIf="!isLoading">
  <tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>

<ng-container>
Run Code Online (Sandbox Code Playgroud)

  • 那更像它 :) 但是 MatTable 不喜欢它。我已经用更改更新了 StackBlitz https://stackblitz.com/edit/angular-mw8kah (2认同)