我的史诗:
const myEpic: Epic<any, any> = action$ =>
action$.ofType(MY_ACTION_TYPE).switchMap(action => {
console.log("begin get ");
return Observable.fromPromise(api.get()).map(
response => {
console.log("end get ");
return resultLoaded(action.param, response);
}
);
});
然后在某些时候我会产生两个具有相同MY_ACTION_TYPE类型但具有不同参数的动作。结果进入控制台:
begin get
begin get
end get
为什么缺少第二个“终点”?
答案 0 :(得分:0)
将switchMap更改为mergeMap即可解决问题。
关于switchMap的文档: 类似于mergeMap(),但是当源可观察对象发出时,取消内部可观察对象的所有先前预订。