Redux Observable:为多个动作触发相同的史诗

Redux Observable: Fire same epic for multiple actions

我想触发我史诗的相同内容以响应多个动作。 像这样:

export default function uploadImage(action$, store) {
  return action$.ofType([
      'UPDATE_IMAGE,
      'UPDATE_INTERESTS',
      'UPDATE_LANGUAGE',
      ...
    ])
    .switchMap(action => {
      Api.updateUser();
    })
};

这可能吗?

从文档的外观来看,它似乎采用了可变数量的参数:https://github.com/redux-observable/redux-observable/blob/fd393a1adf359381c98ca494bc5dc2cac80f6d07/src/ActionsObservable.js#L26

您的自我回答是正确的,ofType 接受任意数量的类型作为参数。

这目前没有记录,因为在实践中我们几乎总是发现它是反模式的标志——并非总是如此,但它非常可疑。

在我们对何时是好是坏有了可靠的指导之前,我们希望继续劝阻将其作为一般规则使用,但当然只有您才能判断它是否合适。