angular - 如何: Re-send an http request when using async pipe

标签 angular rxjs

像这样在模板中使用异步管道时,有没有办法重新发送 HttpRequest?

myObservable$ = this.http.get('api');
<div *ngFor='let item of myObservable$ | async'>{{item}}</div>

最佳答案

您需要向Observable发出一个新值,如果您需要通过特定事件重新获取数据,您可以将事件放入Observable并使用switchMap 用于触发器获取:

event$ = new BehaviorSubject(true);

myObservable$ = this.event$.pipe(
  switchMapTo(this.http.get('api'))
);

refetchData() {
  this.event$.next();
}

关于angular - 如何: Re-send an http request when using async pipe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56187609/

相关文章:

javascript - Angular http.get() 检测调用超时

javascript - RxJS 将当前值推送给迟到的订阅者

Angular 6 Async-await 无法处理 http 请求

angular - ionic 模态变化检测

html - 如何修复 mat-list-item 不占用行的全部空间

angular - 将 typescript 项目编译为本地模块

regex - Angular/Typescript RegExp 枚举

reactjs - 围绕 Angular2 的架构模式 : Redux, Flux、React、Reactive、RxJS、Ngrx、MVI、

angular - Rxjs 6 等效于 Observable.create(subscriber -> {...}).share()

angular - 如何在 Angular 2 中创建 RxJS 主题?