我可以使用异步管道将可观察对象解包到视图变量而不是 ngIf 吗?

Can I unwrap an observable with the async pipe to a view variable other than with an ngIf?

我知道我可以使用 *ngIf="obs$ | async as obs" 但如果我需要在 obs 为 false 时使用该值怎么办?

<ng-container *ngIf="obs$ | async as obs">
  observable is {{ obs | json }}
</ng-container>

https://stackblitz.com/edit/angular-zkbemb?file=src%2Fapp%2Fapp.component.html

我希望读取 observable 的那一行是错误的,而不是块消失。我知道我可以使用 else 块,但我需要的是将 readonly$ 标志解包到视图变量 readonly 并且不想在 else 块中重复我的整个模板。我想不出任何不涉及在组件中订阅的方法,但这不是唯一一次发现自己想要模板中的方法 #boolFlag = boolObs$ | async

感谢 Reddit 上的这条评论 post

https://www.reddit.com/r/Angular2/comments/m2r39u/angular_ngif_learn_all_the_features_available_in/gqku9f9/

<ng-container *ngIf="{ obs: obs$ | async } as data">
  observable is {{ data.obs | json }}
</ng-container>

https://stackblitz.com/edit/angular-ghxtsn?file=src%2Fapp%2Fapp.component.html