redux-case
基于redux的求和小案例
介绍
redux是一个专门用于做状态管理的JS库(不是react插件库)。
作用: 集中式管理react应用中多个组件共享的状态
组件之间状态共享,组件改变全局状态或其他组件状态
安装教程
- npm install redux
redux求和案例讲解
基本概念
- Store 就是保存数据的地方,你可以把它看成一个容器。整个应用只能有一个 Store。
- 状态数据通过store.getState()拿到
- action 一个对象,改变state
action:{
type:‘xxx’,
data:‘xxx’
} - 改变状态数据store.dispatch()
- Reducer实际上是一个函数,接受action和state,实际上来处理state的地方,store.dispatch会触发Reducer执行
- store.subscribe:redux可以修改状态,但不负责属性渲染页面,所以即使状态改变了,但页面并未更新,这个方法是监听函数,一旦state发生改变则触发此函数
常用api
- store.getState()
- store.dispatch()
- store.subscribe()
1.求和案例
(1).去除Count组件自身的状态
(2).src下建立:
-redux
-store.js 保存数据的地方
-count_reducer.js store将actionn和preState交给reducer处理
-count_action.js 专门用于创建action对象
-constant.js 放置容易写错的type值
(3).store.js:
1).引入redux中的createStore函数,创建一个store
import {createStore} from 'redux'
2).createStore调用时要传入一个为其服务的reducer
import countReducer from './count_reducer'
export default createStore(countReducer)
3).记得暴露sto