如何:在使用异步管道时重新发送 http 请求

Bog*_*n B 5 rxjs angular

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

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

izm*_*dev 5

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

event$ = new BehaviorSubject(true);

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

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

Run Code Online (Sandbox Code Playgroud)