一、redux(v4.0.5)源码查看
-
combineReducers:将所有的单个reducer整合为一个reducer(即combination),里面返回所有的reducer的state健值对。后面当dispatch(action)时,在createStore里面会用到,来获取所有的state树。 -
createStore:通过传入的参数(reducer, preloadedState, enhancer)的有无,执行相应的代码,如果后面两个参数都为undefined,则就返回getState、dispatch方法,一般用法为createStore(reducer, applyMiddleware(m1, m2, m3, ...)),现在看来createStore和applyMiddleware返回的值其实是一样的,传入reducer只不过是为了dispatch的时候用到而已;如果没用到middleware,那就直接进入reducer更新数据。 -
compose:返回一个组合函数(链式调用),主要在applyMiddleware里用到了。 -
applyMiddleware:增强store,改变dispatch的指向,使dispatch(action)时会一层一层进入middleware,走完所有的middleware,同时这也是将middleware和reducer联系起来的一个聪明的方式。 -
bindActionCreators:总体来说就是用来简化mapDispatchToProps这个方法的。
二、redux-thunk(v2.3.0)源码查看
二、react-redux(v7.2.0)源码查看
-
Provider:将store绑定在最顶层组件上,利用context使子组件也能获取并使用store的数据。 -
connect:将store树的数据和action都放在组件的props里,后面使用的时候直接调用this.props.xxx即可。