我对ngrx效果中的代码有一些问题。我想链接两个http调用,但由于某些原因,我的流在第二次http调用期间被阻止。
这是我的代码:
@Effect()
appointmentAvailable$: Observable<Action> = this.actions$
.ofType(actions.ActionTypes.MY_ACTION).map((action) => {
return action.payload;
}).flatMap((request: A) => {
const temp = this.service1.remotehttp(request).map(
response => Object.assign({}, request, { field: response[0].field }))
console.log('service 1 answered');
return temp;
})
.flatMap((request: A) => {
console.log('service 2' + JSON.stringify(request));
const t = this.service2.remotehttp(request);
console.log('service 2 answered');
return t;
})
.map((res) => {
return new actions.MyActionComplete(res);
}).catch((error) => {
return Observable.of(new actions.MyActionError(error));
});
这是我的控制台:
service 1 called
service 2 {"field":correctValue, ....}
并且没有“服务2回答”
我真的不知道我的代码中有什么问题,有人有线索吗?