如何避免在Angular中使用相同Observable源的多个异步管道?

时间:2018-09-19 22:41:55

标签: angular rxjs

我的组件有一个名为Observable的{​​{1}}:像下面的示例一样,当我需要访问state$时如何避免重复我自己?

state$.favorites

是否可以将其分配给模板变量?

2 个答案:

答案 0 :(得分:1)

您可以执行以下操作:

 <ng-container *ngIf="(state$ | async) as state">
      {{ state.favorites.length }}
  </ng-container>

您不需要检查.length。通过执行我的操作,您正在检查可观察对象是否已到达,并检查值是否不为空。

答案 1 :(得分:0)

因此,就我而言,我使用了多个可观察对象,导致大量 | async 管道乱扔我的模板代码。

我发现 this post 在一定程度上解决了这个问题,但模板太多,不合我的口味。

可以找到我的替代解决方案 here