Ng If不适用于Angular 6中的可观察变量

时间:2018-12-13 14:30:50

标签: angular typescript angular-material2

按照此链接,我已将Angular6材料数据网格与服务器端分页集成在一起 https://blog.angular-university.io/angular-material-data-table/

在这里,如果响应中的数据集为空,我想显示“未找到数据”。 我可以采用被映射为Observable的totalCount,并可以如下打印视图。但是,ngIf无法正常工作。

  private totalCountSubject = new BehaviorSubject([]);
  public totalCount$ = this.totalCountSubject.asObservable();
  this.totalCountSubject.next([body.data.count]);

  // View
  {{dataSource.totalCount$}} <!-- It displayes 0 or count of the row -->

   <!-- It does not work. --->
   <span *ngIf="(dataSource.totalCount$ | async) === 0 ">
     NO DATA FOUND!!!!
   </span>

知道ngIf在这种情况下不起作用的任何想法。

1 个答案:

答案 0 :(得分:1)

使用嵌套的ngIf s处理条件

<ng-container *ngIf="dataSource.totalCount$ | async as totalCount">  
   <span *ngIf="totalCount == 0 ">
     NO DATA FOUND!!!!
   </span>

<ng-container>