我有一个仅在observable
具有数据时才显示信息的组件。但是当我尝试在上使用async
operator时,observable
我看不到任何值。我对异步管道的工作方式感到困惑,我认为初始化可观察对象会花费一些时间,在这种情况下,async pipe
对未定义的可观察对象不会做任何事情,这就是组件未显示的原因。
@Component({
template: `
<div *ngIf="todo$ | async as todo">
<div {{todo.name}} </div>
</div>
`
})
export class TodosComponent implements OnInit, OnDestroy {
todo$: Observable<Todo>;
constructor(private store: Store<State>) {}
ngOnInit() {
this.todo$ = this.store
.pipe(select(selectTodos));
}
ngOnDestroy(): void {
}
}
我知道async
管道会处理,Observable
但是如果Observable仍未定义,异步管道也会处理该情况。如果是这样,则对我可能做错的事情有任何建议,请注意,我已订阅并检查observable是否有数据。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句