@Effect()
initDomain$: Observable<Action> = this.actions$.pipe(
ofType('INIT_DOMAIN'),
mergeMap((action: any) =>
this.http.get('https://demo.api/url1.php').pipe(
switchMap((data) => [
{type: 'INIT_IT', payload: data}
]),
catchError(() => of({type: 'INIT_IT_FAILED'}))
)
)
);
我有这个角度效应(ngrx(,在继续之前提出1个请求。如何提出两个请求并等待两个响应后再继续?我知道forkJoin((是答案,但我对的语法有点困惑
forkJoin(
this.http.get('myUrl'),
this.http.get('myOtherUrl')
)
或者,如果你在一个数组中有一束可观测值,你也可以写
const myArrayOfObservables = [
this.http.get('myUrl'),
this.http.get('myOtherUrl')
];
forkJoin(
myArrayOfObservables
)
这是因为"forkJoin"在其参数中使用了"spread"(…args(运算符。