RxJs 6-进行2个http调用并等待所有响应

时间:2018-07-19 05:25:35

标签: rxjs ngrx ngrx-effects fork-join rxjs6

{
"function": 
  {"name": "foo",
   "return": "uint32_t",
   "param": "count",
   "type": "uint32_t"
  }
}

我有这个角度效应(ngrx),可以在继续之前发出1个请求。如何发出2个请求并等待两个响应再继续?我知道forkJoin()是答案,但是我对语法有点困惑

1 个答案:

答案 0 :(得分:1)

forkJoin(
 this.http.get('myUrl'),
 this.http.get('myOtherUrl')
)

或者,如果您在数组中有大量可观察对象,那么您也可以编写

const myArrayOfObservables = [
  this.http.get('myUrl'),
  this.http.get('myOtherUrl')
];

forkJoin(
  myArrayOfObservables
)

这是因为“ forkJoin”将“ spread”(... args)运算符用于其参数。