Redux的使用方式

安装配置

npm i @reduxjs/toolkit
npm i react-redux

文件目录

在src的目录下创建一个store文件夹,其中包含一个modules文件夹,和一个index.js的文件,modules文件夹下包含一个count.js的文件

count.js中的代码

import { createSlice } from "@reduxjs/toolkit";
let countslice = createSlice({
    name:'counter',
    initialState: {
        // 状态属性
    },
    reducers:{
        // 方法
    },
})
export let { 方法名 } = countslice.actions;
export default countslice;

这些是在count.js中比较固定的一些配置,在initialState中来定义我们所需要的属性,在reducers中定义我们需要的方法

index.js中的代码

import { configureStore } from "@reduxjs/toolkit";
import countslice from "./modules/count";
let store = configureStore({
  reducer: {
    countslice: countslice.reducer,
  },
});
export default store;

通过这段代码,我们可以创建一个Redux store,并将countslice模块的状态和操作集成到这个store中。其他组件可以通过连接到这个store,来访问和更新countslice模块的状态。

路由中的配置

首先需要在src文件夹下的index.js中引入react-redux中的Provider,和modules文件夹下的index文件

import { Provider } from "react-redux";
import store from "./store/index";

然后让Provider标签包裹整个路由,确保所有的组件都可以访问到Redux的状态

<Provider store={store}>
    <RouterProvider router={router}></RouterProvider>
  </Provider>

Provider中有一个store,store的作用就是将整个应用程序的逻辑和状态

如何访问Redux中的状态属性

首先需要在modules文件夹下的count.js文件中的initialState中定义一个list

initialState: {
    list: ['Hallo word']
  },

定义完成后,在我们需要访问的组件中引入react-redux中的useSelector方法

import { useSelector } from "react-redux";

之后进行赋值操作

let list = useSelector(state => state.countslice.list);

最后就可以直接访问到我们的list了

如何访问Redux中的方法

首先要在我们的reducers中定义我们的方法并暴露

reducers: {
   log(){
    console.log('111');
   }
  },
export let { log } = countslice.actions;

然后在我们需要使用这个方法的组件中导入这个方法,和useDispatch

import { useDispatch } from "react-redux";
import {log} from './store/modules/count'

然后将useDispatch命名为dispatch,并定义一个新的方法名来进行定义

let dispatch = useDispatch()
  let con_log = ()=>{
    dispatch(log())
  }

最后在我们的按钮中定义事件触发这个方法

<button onClick={()=>{
        con_log()
      }}>按钮</button>

以上属于一些简单的redux的操作和定义,有不懂的可以进行私信,评论,或者从网上自行查找资料,感谢观看

  • 13
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
UmijS 是一个基于 React 的前端开发框架,它提供了一种简单易用的方式来构建单页应用程序。如果你想在 UmiJS使用 Redux,可以按照以下步骤进行操作: 1. 安装 ReduxReact-Redux:在你的项目目录下运行以下命令来安装所需的依赖包: ``` npm install redux react-redux --save ``` 2. 创建 Redux store:在你的项目中创建一个 `store.js` 文件,并使用 Redux 的 `createStore` 方法来创建一个 Redux store。例如: ```javascript import { createStore } from 'redux'; import rootReducer from './reducers'; // 导入你的根reducer const store = createStore(rootReducer); export default store; ``` 3. 创建 reducers:在你的项目中创建一个 `reducers.js` 文件,用于定义你的 reducers。例如: ```javascript // 定义初始状态 const initialState = { // 初始状态数据 }; // 定义 reducer const rootReducer = (state = initialState, action) => { switch (action.type) { // 处理不同的 action 类型,更新 state default: return state; } }; export default rootReducer; ``` 4. 使用 Redux Provider:在你的根组件中使用 Redux 的 `Provider` 组件,将 Redux store 传递给 UmiJS 应用程序。例如: ```javascript import { Provider } from 'react-redux'; import store from './store'; export function rootContainer(container) { return React.createElement(Provider, { store: store }, container); } ``` 5. 在组件中使用 Redux使用 `react-redux` 提供的 `connect` 方法来连接你的组件到 Redux store,并将需要的 state 和 action 传递给组件。例如: ```javascript import { connect } from 'react-redux'; function MyComponent(props) { // 使用 props 中的 state 和 action // ... } const mapStateToProps = state => { // 将需要的 state 映射到组件的 props return { // ... }; }; const mapDispatchToProps = dispatch => { // 将需要的 action 映射

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值