redux学习转载的~reactReact 成王之路

初始Redux (一)理解

2017-04-18  本文已影响132人  Kris_lee

看了三四天的Redux一直是蒙蒙的状态。然后就开始看各种资料,有些资料介绍的是很详细,在关于Redux 的介绍和应用上都很详细,但是真正想使用一个技术,你就必须了解,技术存在的关键性和它的工作方式,而不仅仅只是单纯的拿过来使用。

1、Redux 的 API文档。很详细的介绍Redux。  ------> 中文文档

2、阮一峰对于React的理解,一共有三篇,每一篇都是精华。

a 、第一篇     b、第二篇,中间件和异步 c、第三篇,Redux用法

3、看漫画,学Redux,这是翻译过来的一个文章,真的很好,强烈推荐  --->看漫画学Redux

4、项目我是学了react 中文文档里关于使用ListView 和Redux完成一个任务管理。(当然现在0.43版本推出了FlatList,之后我也会慢慢使用这个标签。) --->项目

对于Redux的理解,我在这里就不多说,主要就是用于代码结构和组件之间的通讯,

用户的使用方式非常简单

用户之间没有协作

不需要与服务器大量交互,也没有使用 WebSocket

视图层(View)只从单一来源获取数据

如果满足以上,你的项目就根本不需要Redux来实现这样的操作。

用户的使用方式复杂

不同身份的用户有不同的使用方式(比如普通用户和管理员)

多个用户之间可以协作

与服务器大量交互,或者使用了WebSocket

View要从多个来源获取数据

某个组件的状态,需要共享

某个状态需要在任何地方都可以拿到

一个组件需要改变全局状态

一个组件需要改变另一个组件的状态

如果满足以上的调节,那么Redux的使用,让代码更加方便快捷。

在做项目的时候,有一个很简单的例子,就是用于在渲染的时候,点击不同的按钮,渲染不同的数据。同时要改变按钮的颜色。如果不使用Redux,则需要在渲染的时候加上判断。并且代码显得臃肿,不便后期的维护。看以前的代码就成了非常痛苦的事情。万一没加注释,那就是生不如死。

Redux设计思想:

(1)Web 应用是一个状态机,视图与状态是一一对应的。

(2)所有的状态,保存在一个对象里面。

Redux有很多api,具体见中文文档。

工作流:

工作流

很多人如果一开始接触Redux,一定不怎么看的懂。仔细看看 《看漫画,学Redux》里面介绍的很详细。

个人对于Redux的理解,综合一句话,就是 所有的state都是放在store里,请求发送的时候,会交给store。而store会决定根Reducer去处理状态。根Reducer会拆分子Reducer,子Reducer只会复制,修改,之后回传给根Reducer。交给store树,之后。交给 视图管理层,来实现状态与视图的一一对应。

上一篇 下一篇

猜你喜欢

热点阅读