在 redux-observable 中收听多个动作

Listen to multiple actions in redux-observable

我可以收听多个动作,而不是一个吗?

现在,为了实现这一点,我正在使用 combineEpics 帮助器

多次 epics 进行此操作:

combineEpics(
  action$ => action$.ofType("SOME_TYPE_A").mapTo(newAction),
  action$ => action$.ofType("SOME_TYPE_B").mapTo(newAction)
);

不过,我可以使用 filter 代替:

action$ =>
  action$
    .filter(({ type }) => type === "SOME_TYPE_A" || type === "SOME_TYPE_B")
    .mapTo(newAction);

但它不可扩展,例如,当我需要监听 5 个动作时。

是否有更优雅的方式来监听多个动作?

ofType 可以带多个键,所以你可以使用:

action$ => action$.ofType("SOME_TYPE_A", "SOME_TYPE_B").mapTo(newAction),