react中redux的使用

昨天初次感觉reudx在react中的应用简直太难了,现把redux的应用流程写一遍

  首先要实现redux的文件,store,action,reducer一个都不能少,其实还有state,它是包含在reduce中的,实现完成之后要明白各个文件是干什么的

     a、store:仓库(所有的状态值都在这里,所有的引用关系都通过仓库来引用,所有关系redux的东西都在store中,最后通过渲染实现组件的状态和样式)

        b、actions:页面发生改变需要通过动作(事件)改变——动作有可能是用户的动作也有可能是程序内置的事件;[action是表述发生什么的对象]

        c、state:状态

        d、reducers:描述动作(事件),修改状态state的地方;是对于action的描述;是修改状态的点

现每个文件进行详细的解释:

1、redux中action文件,在action中要实现程序的事件,事件可有多个,返回的是描述事件类型和数据的对象,然后return的数据传递给reduce中

2、reduce中存储数据状态,最终拿到state中的值,从action中获取的数据,在reduce有条件判断,通过不同的条件判断,把数据传递给state中,最后需要将reduce进行合并才可以进行下一步数据的传递

3、在store文件中是创建storen对合并后的reduce进行引入,再将store,引入到主文件(index.js)中,当前在主文件中需要引入redux,

                 //在此文件中引入react-redux,Provider是关联redux的必须品

                   import {Provider} from 'react-redux'

                    //还需要将store引入到主文件

                    import configureStore from './configureStore/configureStore'

                     //创建一个store的对象

                     const store =  configureStore();

需要用react-redux将所有的视图包裹起来,还需要将store和react-redux关联起来

假如A和B有共同的父组件app.js,现在A和B要互相传递数据,A和B要共享数据,需要把值声明在app.js中,A和B通过redux来读取数据,在App.js中把数据初始化到redux中,接下来就需要将App.js和redux关联起来,是如下操作:

1、App和redux关联起来

       import { connect}from 'react-redux'

2、App和action关联起来,通过actionsType调用login 和updata

     import * as actionsType from '../../actions/userinfo'

3、引入绑定actions的方法,只有绑定actions才能使用action

import {bindActionCreators}from 'redux'

关联好之后就可以往redux中写数据了,通过redux读和写数据的操作,必须通过mapStateToProps读取redux数据的方法和mapDispatchToProps给写入redux数据的方法


通过mapDispatchToProps中返回的对象,可以调用action的方法往action传入数据,然后就是redux传数据的流程了。。。

接下来是子组件通过redux读取数据的操作

在子组件A和B中分别通过import { connect } from "react-redux",关联redux就可以通过mapStateToProps的方法读取redux中的数据了。。。

你可能感兴趣的:(react中redux的使用)