当前位置:网站首页>Redux使用
Redux使用
2022-07-07 23:44:00 【是张鱼小丸子鸭】
目录
1,redux的工作流程
2.安装redux
npm i redux --save
3.redux概念了解
redux是一个专门用于做状态管理的js库(不是react插件库)
可以用在react,angular,vue项目中,基本与react配合使用
作用:集中式管理react应用中多个组件共享的状态
4.创建Redux中的仓库-store和reducer
首先,创建一个store文件夹,然后创建一个index.js文件,再创建一个reducer.js文件
import { createStore } from "redux";
//引入reducer文件
import reducer from './reducer'
let store=createStore(reducer)
export default store
reducer.js文件
const defaultState={
value:‘张三’,
list:[
'您好',
'hello'
]
}
//业务逻辑可以写这里
export default (state=defaultState,action)=>{
return state
}
这样,简单的store和reducer就搭建好了,现在我们在组件中使用store仓库
首先进行引入
import store from './store'
然后我们可以打印一下store,打印结果如下,他有一个getState()方法
然后在页面渲染我们getState里面的值即可
注:reducer只能接收state,不能改变state
5.redux中间件( Redux-thunk)
安装
npm i redux-thunk --save
配置
import { createStore,applyMiddleware } from "redux";
import thunk from 'redux-thunk'
//引入reducer文件
import reducer from './reducer'
let store=createStore(reducer,applyMiddleware(thunk))
export default store
creatStore只能接收两个参数,如果想要定义多个参数,我们可以使用增强函数(compose)
异步处理写在中间件Redux-thunk中
解决异步action不能使用function方法,如果我们不使用中间件,那么我们如果在action中使用函数,那么他会进行报错
6.combineReducers使用
作用:合并多个reducer函数
redux的combineReducers()可以方便的将redux的reducer拆分为各个小的reducer文件,统一调用各自的reducer,方便统一管理
creatStore只能接收两个参数,如果想要定义多个参数,我们可以对多个reduce进行合并,使用combineReducers
import { createStore,applyMiddleware,combineReducers } from "redux";
import countReduce from '../reduces/count_reduce'
import todoReduce from '../reduces/todolist_reduce'
import thunk from 'redux-thunk'
// 使用redux官方提供的合并reduce方法
const allReducer = combineReducers({
count:countReduce,
todolist:todoReduce
})
// 第一个参数为全部reduce,第二个参数为使用支持异步action的中间件
let store = createStore(allReducer,applyMiddleware(thunk))
export default store
边栏推荐
- Ag9310 same function alternative | cs5261 replaces ag9310type-c to HDMI single switch screen alternative | low BOM replaces ag9310 design
- 2022 tea master (intermediate) examination questions and tea master (intermediate) examination skills
- Content of one frame
- 2021-04-12 - new features lambda expression and function functional interface programming
- Matlab code on error analysis (MAE, MAPE, RMSE)
- Cs5261type-c to HDMI alternative ag9310 | ag9310 alternative
- 子矩阵的和
- Redis master-slave replication
- Basic realization of line graph
- Kafka-connect将Kafka数据同步到Mysql
猜你喜欢
滑环使用如何固定
[loss function] entropy / relative entropy / cross entropy
Led serial communication
4. Strategic Learning
Ag9310 same function alternative | cs5261 replaces ag9310type-c to HDMI single switch screen alternative | low BOM replaces ag9310 design
Anaconda3 download address Tsinghua University open source software mirror station
Redis集群
QT build with built-in application framework -- Hello World -- use min GW 32bit
滑环在直驱电机转子的应用领域
Scalar / vector / matrix derivation method
随机推荐
2021-04-12 - new features lambda expression and function functional interface programming
Guojingxin center "APEC investment +": some things about the Internet sector today | observation on stabilizing strategic industrial funds
break algorithm---刷题map
Grey correlation analysis link (portal) matlab
2022 free test questions of fusion welding and thermal cutting and summary of fusion welding and thermal cutting examination
Gnuradio operation error: error thread [thread per block [12]: < block OFDM_ cyclic_ prefixer(8)>]: Buffer too small
Cs5261type-c to HDMI alternative ag9310 | ag9310 alternative
npm 內部拆分模塊
ROS problems (topic types do not match, topic datatype/md5sum not match, MSG XXX have changed. rerun cmake)
Parade ps8625 | replace ps8625 | EDP to LVDS screen adapter or screen drive board
2022 low voltage electrician examination content and low voltage electrician simulation examination question bank
MATLAB R2021b 安装libsvm
解决报错:npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
Gnuradio transmits video and displays it in real time using VLC
Tapdata 的 2.0 版 ,开源的 Live Data Platform 现已发布
About snake equation (3)
Common operations of numpy on two-dimensional array
LaTeX 中 xcolor 颜色的用法
2022 safety officer-a certificate free examination questions and safety officer-a certificate mock examination
About snake equation (5)