Насколько я понимаю, асинхронный конвейер Angular подписывается на открытый для вас Observable в шаблоне HTML. НАПРИМЕР
Составная часть
export class TestComponent {
let todos$: Observable<Array<Todo>>;
constructor(private http: HttpClient) {}
ngOnInit() {
this.todos$ = this.http.get<Array<Todos>>(...)
}
}
Шаблон
<div *ngFor="let todo of todos$ | async">
{{ todo }}
</div>
Насколько я понимаю, для успеха HttpClient Observable будет генерировать следующие события:
next(value)
completed
и по ошибке
error(error)
completed
Когда наблюдаемый генерирует завершенное событие, подписка закрывается.
Следовательно, если вы подписаны на холодный наблюдаемый объект, такой как Angulars HttpClient Observable, как вы повторите этот запрос HttpClient?
Оператор async выполняет начальную подписку, но будет закрыт, как только будет завершена холодная наблюдаемая, как вы заставите оператор async повторно подписаться, если вы хотите выполнить его снова? например, если вы хотите обновить данные.