引入
中间件:仅限于dispatch方法,也就是从dispatch函数调用到action对象被reducer处理这个过程中的操作Store Enhancer:对ReduxStore进行更深层次的增强定制增强器的接口
一个什么都不做的Store Enhancer长得这个样子利用所给的参数创造出一个store对象,然后定制store对象,最后把store对象返回去就可以
一个store对象中包含下列接口
□ dispatch
□ subscribe
□ getState
□ replaceReducer如果我们想要增强器给每个dispatch函数的调用都输出一个日志,那么就实现一个logEnhancer
将store上某个函数的引用存下来,给这个函数一个新的实现,但是在完成增强功能之后,还是要调用原有的函数,保持原有的功能
增强器实例reset
在不刷新切入另一个页面的时候,还保持原有的store状态,也就是如何替换reducer和Redux Store上状态的问题创造一个增强器,给创造出来的store对象一个新的函数reset,通过这一个函数就完成替换reducer和状态的功能创造之前的状态Store,替换为目前的newReducer
在这个函数中,如果发现action对象的type为RESET_ACTION_TYPE,那就直接返回resetState作为整个Store的新状态,其他的action对象则交给其他reducer来处理。