首页 > redux里面的middleware是什么意思?

redux里面的middleware是什么意思?

redux里面,异步要用middleware来处理。这个怎么理解?比如我发一个ajax,然后在回调里面去dispatch(action),这样不可以吗?为什么要用到middleware?


middleware 本质是一个多层函数的柯里化,主要作用在于两点:

  1. 可以对数据流做集中的处理,而且可以在多个 middleware 之间串联

  2. 通过注入的 dispatch 和 getState 可以方便的访问到当前的状态,可以对其做额外进行处理,也能异步的 dispatch 当前的 action


Redux 莞式一条龙教程:https://github.com/kenberkele...,快上车吧骚年!进阶篇的最后就是你要的答案咯~~~


楼上答案思路是对的,但是我认为,其实middleware本质是对原本store中的dispatch方法的强化。如果你需要一些额外的功能,比如打印用户请求日志,就可以对dispatch方法进行强化。

redux是flux的一个实现,也只是一个模式的实现。更多用户需要的定制化的东西,就需要这个中间件的东东了。

为redux提供中间件的接口是很聪明的,这样就会产生无数优秀的中间件,也在另一方面促进了框架的繁荣。

所以对你本身的代码来讲,这么做是可以的,但是redux的设计者显然考虑的更多。


你的方法是可以的,只要能拿到dispatch方法即可。
middleware本质上是对dispatch的替换。
支持异步action的中间件thunk的主要作用是给你的action creator注入dispatch,让你在异步的回调中能够拿到dispatch并使用。

【热门文章】
【热门文章】