我刚刚开始使用Angular 6,因此我对可能是一个非常简单的问题预先表示歉意。我也刚刚开始考虑使用filename = test\web\tests.webpack.jsx
进行状态管理。
在组件的状态中,我有一个ngxs
可观察的属性。
@Select
我的问题是,如何在组件模板中实际使用@Select(HomeState.isLoading) isLoading$: Observable<boolean>;
?在模板中使用可观察状态属性的一般模式是什么?我应该订阅observable并将值映射到组件上的另一个属性,还是可以在模板中使用Observable?
当然,如果只是笔直的isLoading
,我可以像模板中的boolean
一样使用它。
答案 0 :(得分:2)
使用可观察对象的想法是允许通过使用模板中的“异步”管道来角度管理订阅,否则,如果您自己在某个时候进行操作,则您需要通过取消订阅可观察对象来管理所有订阅。组件被破坏。在您显示的示例中,isLoading
变量可在模板上用于显示或隐藏组件的一部分,例如:
<div *ngIf="isLoading$ | async">show loader</div>
在我看来,一个好的模式总是让视图处理订阅!如果您需要转换可观察对象中出现的变量,则始终可以通过管道传递和转换变量。