redux作用
提供了一种管理数据的方式,收敛改变数据的入口,以保证数据变化的可控、可预测。
源码核心内容
store
由方法createStore创建,一个store由以下3部分组成,分别对应createStore方法的3个参数:
- reducer:定义state如何变化;
- preloadedState:state的初始值(定义state数据结构);
- enhancer:redux middleware,通过middleware可以实现为state变化增加副作用(打日志)等逻辑。
设计理念
compose(函数组合)
redux middleware是函数,通过compose实现了各个middleware函数的组合,保证了middleware的有序调用。