Redux 框架
什么是 Redux
Redux 是一个专为 React.js 应用程序开发的状态管理模式
Redux redux-persist
持久化数据存储
Redux
Redux 特点
– 集中式存储管理应用的所有组件的状态
– 保证状态以一种可预测的方式发生变化
– 简化 Redux 组件间通讯
核心概念与原理
state
state
对象包含所有数据
Store
Store
保存数据的地方,整个应用只能有一个 Store
Action
Action
要想更新 state 中的数据,你需要发起一个 action。action 就是一个普通 JavaScript 对象(注意到没,这儿没有任何魔法?)用来描述发生了什么。其中,type 属性是必须的,表示 Action 的名称。其他属性可以自由设置,由组件 store.dispatch(‘action’,payload) 触发
Reducer
reducer
只是一个接收 state 和 action,并返回新的 state 的函数。
dispath
store
操作行为触发方式,是执行 action 的方法 store.dispatch('action',payload)
subscribe
state 允许使用 store.subscribe
方法设置监听函数,一旦 State 发生变化,就自动执行这个函数。只要把 View 的更新函数(对于 React 项目,就是组件的 render
方法或 setState
方法)放入 listen, 就会实现 View 的自动渲染
getState()
store.getState()
获取 state 状态数据
使用步骤
下载安装
npm i redux --save
npm i redux@4.1.1 --save //指定版本
实现 store.js 文件
import {
createStore} from 'redux';
const initState ={
count:0
}
// reducer 计算函数,操作 state
const reducer = (