Redux 简介
先放一下 redux 官网,多读一读官方文档总是有好处的。
redux 官网
redux 是一个用于 Javascript 应用的可预测状态容器
可预测:reducer 是个纯函数,有怎样的输入就有怎样的输出,reducer 接收旧庄台和 action 集合,经过某些操作返回新状态,其状态规则都是开发者站在上帝视角设定好的,新状态可预测。
状态容器:store 用来存储 state,集中统一管理树状结构。
Jsvascript 应用:Redux 是独立的库,可通用于各种 Javascript 应用,不仅仅是 react。
redux 的设计思想很简单
- Web 应用是一个状态机,视图与状态是一一对应的。
- 所有的状态,保存在一个对象里。
Redux 模型
Store:
Store 意为数据仓库,是保存数据的地方,整个应用只能有一个 store。
1 | import {createStore} from 'redux' |
createStore 函数接受另一个函数作为参数,返回新生成的 Store 对象。
State:
State 就是数据,数据都存在仓库里,怎么去获取仓库里的数据呢?
1 | import {createStore} from 'redux' |
通过 getState()来获取仓库中的数据。
reducer:
Reducer 是一个纯函数,只要是同样的输入,必定得到同样的输出
纯函数的一些规则:
- 不能修改参数
- 不能调用系统 I/O 的 API
- 不能调用 Date.now()或者 Math.random()等不纯的方法,因为每次会得到不一样的结果
1 | const reducer = (state = defaultState, action) => { |
未完待续……
参考文章
阮一峰大佬的文章:
Redux 入门教程(一):基本用法
Redux 入门教程(二):中间件与异步操作
Redux 入门教程(三):React-Redux 的用法
本文作者:人模人样的搬砖老段
本文链接:关于 redux
如有错误,请及时评论或者知乎私信或者 B 站私信哦~