У меня есть компонент, который показывает информацию, только если observable
имеет данные. но когда я пытаюсь использовать оператор async
на observable
I , я не вижу никакого значения. Меня смущает то, как работает асинхронный канал . Я думаю, что потребуется время для инициализации наблюдаемого , в этом случае 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 все еще undefined будет также обрабатывать асинхронную трубу в этом сценарии. если да, то есть ли какие-либо предположения о том, что я могу делать неправильно, пожалуйста, обратите внимание, что я подписался и проверьте, есть ли данные, наблюдаемые в системе.