Redux 是 JavaScript 的状态容器,它提供了可预测的状态管理
- 单一数据源
应用中所有的 state 都以一个对象树的形式储存在一个单一的 store 中。 - state 是只读的
惟一改变 state 的办法是触发 action,一个描述发生什么的对象。 - 使用纯函数执行修改
为了描述 action 如何改变 state 树,你需要编写 reducers。接收先前的 state 和处理的 action,返回新的 state。reducer 可根据应用的大小拆分成多个,分别操纵 state 的不同部分。
使用纯函数的好处是无副作用,仅仅依赖函数的输入,当输入确定时输出也一定保持一致。