• react-redux使用


    目录

    react-redux和redux的关系?

    react-redux基本使用

    1.安装

    2.配置

    3.组件中使用


    react-redux和redux的关系?

    redux是react中进行状态管理的js库(不是react插件),一般是管理多个组件中共享数据状态,和vue中的vuex是一样的

    react-redux是redux官方react绑定库,能够使react组件从redux store中读取数据,并且向store分发actions以此来更新数据,说白了就是用于连接redux,它提供了connect和Provider两个Api

    react-redux基本使用

    1.安装

    npm i react-redux@7 --save

    尽量安装8.0以下的版本,8.0以上会报错,无法使用connect方法,提示hooks错误,provider也无法使用

    2.配置

    首先,我们在入口文件中配置react-redux的Provider方法,绑定store的redux对象数据

    1. //导入react-redux的provier的组件
    2. import { Provider } from "react-redux"
    3. //...other
    4. root.render(
    5. <Provider store={store}>
    6. <Routes />
    7. Provider>
    8. );

     注意:Provider的store参数必须写,如果不写,他会报错,他的原理跟我们使用context状态树中给provider传递的value值一样

    3.组件中使用

    在我们要使用的组件中尝试连接react-redux连接redux的数据

    使用步骤

    • 导入react-redux依赖包,引入connect方法
    • connect有两个函数参数,mapStateToProps和mapDispatchToProps
    • 把redux中state数据和action方法直接映射到组件props属性中去
    • 组件中可以直接通过props使用redux中的数据,调用方法直接调用redux中的action的数据
    • connect( mapStateToProps,mapDispatchToProps)(组件名)

    代码展示

    1. import React from 'react';
    2. import { connect } from 'react-redux';
    3. export default function ReactRedux(props) {
    4. console.log(props);
    5. return (
    6. <div>
    7. <h3>react-reduxh3>
    8. div>
    9. )
    10. }
    11. /把redux中的state数据映射到组件内部的变量
    12. const mapStateToProps=(state)=>{
    13. console.log(state);
    14. return {
    15. ...state
    16. }
    17. }
    18. //把redux中action的操作,可以映射成为组件的props的内部函数
    19. const mapDispathToProps=(dispatch)=>{
    20. return {
    21. plus:()=>dispatch({type:'PLUS'})
    22. }
    23. }
    24. //连接redux的操作的方法
    25. ReactRedux=connect(mapStateToProps,mapDispathToProps)(ReactRedux)

    connect方法执行完成以后绑定当前组件,复制完直接抛出即可

    我们打印props中的数据会发现我们store中数据会作为props中属性给我们打印出来

    这样,我们就可以使用props.属性/方法进行使用

     

  • 相关阅读:
    nodejs+vue校园失物招领平台
    《JSP》
    Spring事务配置(案例:转账业务追加日志,事务传播行为)
    金融业信贷风控算法10-神经网络模型
    一文学会鉴别“套壳”ChatGPT模型
    计算机毕业论文java毕业设计选题源代码基于javaweb实现的客运站网上售票系统
    深度学习——TensorBoard的使用
    19.工厂模式能解决啥问题
    在线智慧礼佛供品程序开发
    【技术实战】Vue功能样式实战【二】
  • 原文地址:https://blog.csdn.net/qq_60976312/article/details/126273117