闭包都是个老掉牙的话题了,这次又提起,是因为重看Redux源码时发现了applyMiddleware里的用法很巧妙.我们先看一个简单的例子. var a = (num) => num + 1 var b = { name: (num) => a(num) } a = (num) => num + 5 console.log(b.name(3)) 打印结果是4还是8呢? 对象b有一个属性name.name是一个方法,函数体里使用了函数a,a是全局作用域的变量,之后a修改了.答案是8.我们不
写在前面 写React也有段时间了,一直也是用Redux管理数据流,最近正好有时间分析下源码,一方面希望对Redux有一些理论上的认识:另一方面也学习下框架编程的思维方式. Redux如何管理state 注册store tree 1.Redux通过全局唯一的store对象管理项目中的state var store = createStore(reducer,initialState); 2.可以通过store注册listener,注册的listener会在store tree每次变更后执行 st