Redux中间件和Redux可观察的史诗有什么区别?

时间:2018-12-13 16:53:55

标签: javascript redux redux-observable side-effects redux-middleware

我想了解何时在redux middleware上使用redux-observable epic(反之亦然)。

从redux中间件documentation

  

它在调度动作和到达减速器之间提供了第三方扩展点。人们使用Redux中间件进行日志记录,崩溃报告,与异步API对话,路由等等。

来自redux-observable documentation

  

虽然您通常会根据收到的某些动作做出动作,但这实际上不是必须的!一旦进入Epic,只要最终返回的流中的任何输出都是可操作的,就可以使用所需的任何Observable模式。

我的理解是,redux中间件中的某个操作可能会或可能不会遇到减速器,如果这样做,则可能会或可能不会导致状态改变。在史诗中,您可以产生一个新动作,该动作可能会或可能不会撞击减速器或导致状态改变。

看起来两者都可以用来产生副作用,所以两者之间的差异对我来说有点模糊。

问题:FRP基础是唯一使它们与众不同的东西吗?还是应用程序生命周期中存在特定事件,而这些事件最好用经典中间件或史诗来处理?

1 个答案:

答案 0 :(得分:3)

“中间件”是一种通用类型的事物,可用于自定义Redux存储。 redux-observable是特定于 的Redux中间件,可让您使用RxJS逻辑与调度的动作进行交互。