CombineLatest不起作用

时间:2018-07-21 18:40:59

标签: angular rxjs6 combinelatest

我用angularfire2和rxjs 6创建了一个新的angular6项目。我正在调试要加载可观察对象时显示的加载栏。

我的ts代码:

import { combineLatest, Observable } from 'rxjs';

groups: Observable<Array<any>>;
singles: Observable<Array<any>>;
combined: Observable<Object>;

public loadall()
{
    this.groups= this.db.collection('groups').valueChanges();
    this.singles= this.db.collection('singles').valueChanges();
    this.combined = combineLatest(this.groups, this.singles);
    //took this from https://auth0.com/blog/whats-new-in-rxjs-6/
}

我的html模板:

<ng-template #loading>
  <div class="loader"></div>
</ng-template>

<div *ngIf="combined | async; else loading"> //this div
  <div *ngFor="let group of groups | async">
    {{ group.name }}
    <div *ngFor="let single of singles | async">
      {{ single.name }}
    </div>
  </div>
</div>

当前没有// div括号,将显示输出。但是,使用// div括号,将不会显示输出。

在以前的rxjs版本中,我使用了:

this.combined = Observable.combineLatest(query$);

这有效。所以我觉得我的CombineLatest运算符的实现是错误的。感谢进一步调试的帮助。

0 个答案:

没有答案