Firestore在ngIf条件中剥离异步数据

时间:2017-11-06 00:59:30

标签: angular firebase angularfire2 google-cloud-firestore

我的应用正在运行Angular 4.4.5,我正在使用firebase通过angularfire2 ^ 5.0.0-rc.3。

我的主分支正在运行Firebase Realtime DB,一切正常,但是当我转移到FireStore数据库时,我现在遇到一个问题,即ngIf语句不允许我的Observable通过......

所以基本上我有一个在内容加载时触发加载器,但数据总是在这些条件内返回null ...

条件似乎回归正确,因为纯文本会显示在其中,但数据本身会返回null ...

{{(analyses$ | async) | json}} <!-- This works like a charm -->

<div *ngIf="(analyses$ | async)">
  {{(analyses$ | async) | json}} <!-- This doesn't work -->
  HI WORLD   <!-- This prints out fine! -->
</div>

我错过了什么?

1 个答案:

答案 0 :(得分:0)

这是对原始问题的较晚答复,但我遇到了同样的问题,并按如下方式处理:

<app-dumb-component
  *ngIf="(data$ | async) as data"
  [data]="data"></app-dumb-component>

键位于(data$ | async) as data中,然后在要处理控件中可观察对象的任何地方使用该引用。