Redux本身和 React 并没有特别紧密的联系,而是 Facebook 提出的 Flux 架构的一种优秀实现,可以搭配其他任何框架一起使用。在 React 上使用,需要搭配 react-redux(如此一来 Redux 可以不局限于 React,而让社区发展出更多的 redux-* 中间件)。
Redux 在 React 的基础上(state 和 props),增加了store、action、reducer的概念,规范了全局一个 state,从而只需要根据这个 state 就能回朔出整个应用的状态。组件通过 dispatch 将 action 传到 store,reducer 根据原来的 state 以及 action,返回新的 state,组件根据新的 state 渲染界面。
Redux 是一个可预测的状态容器,即只需要有状态树,就能还原出“事发现场”。