Redux 可观测重复次数can';无法从发出的操作捕获错误,错误会停止操作流

Redux 可观测重复次数can';无法从发出的操作捕获错误,错误会停止操作流,redux,rxjs,redux-observable,Redux,Rxjs,Redux Observable,如果js错误是由redux可观察epic发出的动作导致的,那么它会停止所有epic收听新动作。这是相当令人讨厌的,因为在前端,它仍然看起来好像应用程序正在工作,但在后台没有得到保存 我尝试在epic中捕获错误,但由于某些原因,它没有捕获由结果发出的操作引起的错误(请参见此处的示例:) 我认为升级到版本1.0.0 redux observable可以解决这个问题,但不幸的是它仍然存在 是否有任何方法可以捕获由redux可观测发射动作引起的错误 问题与此不同,因为错误是在epic发出其输出redux

如果js错误是由redux可观察epic发出的动作导致的,那么它会停止所有epic收听新动作。这是相当令人讨厌的,因为在前端,它仍然看起来好像应用程序正在工作,但在后台没有得到保存

我尝试在epic中捕获错误,但由于某些原因,它没有捕获由结果发出的操作引起的错误(请参见此处的示例:)

我认为升级到版本1.0.0 redux observable可以解决这个问题,但不幸的是它仍然存在

是否有任何方法可以捕获由redux可观测发射动作引起的错误

问题与此不同,因为错误是在epic发出其输出redux操作后发生的减速器中触发的,因此使用
捕获它。在可观察对象链中的error
不起作用(请参阅演示)


谢谢

在讨论了这个问题之后,最安全的解决方案似乎是创建一些定制的Redux中间件,以阻止错误一直冒泡到根epic,例如

const store = createStore(rootReducer,
  applyMiddleware(epicMiddleware, store => next => action => {
    try {
      next(action);
    } catch (e) {
      setTimeout(() => {
        throw e;
      });
    }
  })
);