Redux源码解读
Run_youngman
送人玫瑰,手有余香。
展开
-
Redux源码解读--(1)知识准备之函数式编程
函数式编程的思想是把多步骤的运算操作携程一系列嵌套函数的调用。 本文引用阮一峰大神的几个例子作为说明: 一个数学表达式 : (1 + 2) * 3 - 4 完成可以分为三个步骤: 1. var a = 1 + 2; 2. var b = a * 3; 3. var c = b - 4; 而函数式编程要把多操作映射成嵌套函数。 var result = subtract(原创 2018-01-17 15:42:08 · 294 阅读 · 0 评论 -
Redux源码解读--(2)combineReducers
首先,这里默认读着已经熟练理解Redux的使用了,如果还不是很熟练,请参照Redux,这个是我读过最好的理解Redux的文章。 首先看一下函数的使用方法,要理解最终函数的目的就是把两个Reducer变成一个Reducer导出: function card(state, action) { switch (action.type) { case 'CHANGE_NAME':原创 2018-01-17 16:23:30 · 238 阅读 · 0 评论 -
Redux源码解读--(3)bindActionCreators
首先看一下函数的使用场景: @connect( state => { const { } = state; return { } }, dispatch => ({ actions: bindActionCreators({ ...actions, ...otheractions }, dispatch) })原创 2018-01-17 16:50:20 · 850 阅读 · 0 评论 -
Redux源码解读--(4)compose 和 applyMiddleware
这两个代码比较少,但是都是精华,放在一起讲。 先说compose文件。 export default function compose(...funcs) { if (funcs.length === 0) { return arg => arg } if (funcs.length === 1) { return funcs[0] } return f原创 2018-01-17 18:52:05 · 754 阅读 · 0 评论 -
Redux源码解读--(5)createStore
下面介绍最后一个函数,CreateStore.先上一个基本的用法吧。const store = createStore(reducers, state, enhance);这个enhance就是 applyMiddleware(...middleware),可以参见上一篇。下面上源码吧。首先说一下,这么多代码其实首次执行的逻辑很简单,大部分代码都是定义了一个函数去等待调用的,真正就只是调用了一个默原创 2018-01-17 20:16:38 · 582 阅读 · 0 评论