一直觉得有些概念还离着自己比较远,比如ES6,比如React,比如Redux,虽说这些概念早已经火的一塌糊涂,每天逛微博知乎到处都是他们的身影,但感觉好像和自己没什么关系。不过最近要开始一个新的项目,一个webapp,开始依然像我以前一样,顶级组件处理处理逻辑和数据,数据通过组件 ...
一直觉得有些概念还离着自己比较远,比如ES6,比如React,比如Redux,虽说这些概念早已经火的一塌糊涂,每天逛微博知乎到处都是他们的身影,但感觉好像和自己没什么关系。不过最近要开始一个新的项目,一个webapp,开始依然像我以前一样,顶级组件处理处理逻辑和数据,数据通过组件属性分发下去,逻辑通过事件分发下去,这时候产生一个问题,所有的逻辑顶级组件处理,顶级组件会越来越臃肿,对于嵌套层级较多的组件,事件需要一级级的传递。这时候需要拆分顶级组件的逻辑,最好子组件也能操作逻辑,但数据依然只有一份,Redux好像可以解决这个问题。
Redux有四个核心内容:state、Action、Reducer和Store。
state是唯一的数据源,我们在应用内需要保证数据源的唯一。
Action定义了一系列的动作,获取数据的操作可以在这里处理,比如ajax之类。可以使用Action Creator定义action,Action Creator就是一个普通的函数,返回一个普通的对象,其中type字段是必须的,其他随意。比如定义一个发送文本消息的action:
var sendTextMsg = function(to, msg) { return { type: 'SEND_TEXT_MSG', to: to, msg: msg }}
原标题:我眼中的Redux
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。