我有一个Observable,我想继续执行直到:
1)uploadActions.MARK_UPLOAD_AS_COMPLETE用一定的有效载荷调用动作
要么
2)uploadActions.UPLOAD_FAILURE使用任何有效负载调用该动作
这是我所能得到的(并且不起作用):
return Observable.interval(5000)
.takeUntil(
action$
.ofType(
uploadActions.UPLOAD_FAILURE,
uploadActions.MARK_UPLOAD_AS_COMPLETE
)
.filter(a => { // <---- this filter only applies to uploadActions.MARK_UPLOAD_AS_COMPLETE
const completedFileHandle = a.payload;
return handle === completedFileHandle;
})
)
.mergeMap(action =>
...
);
Run Code Online (Sandbox Code Playgroud)
有没有一种干净的方法可以实现这一目标?