0
在我的商店中有一個包含未決網絡請求的隊列。 當動作ATTEMPT_FLUSH
已啓動時,我想按順序發送請求。 但是,如果其中一個失敗併發出ATTEMPT_FLUSH_CANCELLED
,則不應嘗試下一個(當然,在我再次嘗試下一個ATTEMPT_FLUSH
時)。當一個失敗時取消ajax調用順序
這裏是我到目前爲止
export const attemptFlushEpic = (action$, store) =>
action$
.ofType(ATTEMPT_FLUSH)
.mergeMap(() => Observable.from(store.getState().queue)) // state.queue is an array
.concatMap(action =>
Observable.ajax(action.url)
.map(response => removeFromQueue(action))
.catch(err => Observable.of(attemptFlushCancelled())));