umi中使用redux(@reduxjs/toolkit)

简介: umi中使用redux(@reduxjs/toolkit)

前言


这篇文章可以让你学会如何在umi3中配置使用redux


想必你已经搭好了umi框架,废话不多说,直接上教程


以下是正文


一、安装关于redux的第三方库


安装两个第三方库,用npm或yarn都可


tyarn add react-redux @reduxjs/toolkit


二、配置


1、创建store文件夹index文件


a2bc185c1673c362fad5f731880763db_abe5f405103e42f8a23b07096b1de990.png


代码如下:


import { configureStore } from '@reduxjs/toolkit';
import userReducer from './slices/userSlice';
export default configureStore({
  reducer: {
    user: userReducer,
  },
});


2、创建slice文件


8563515bb86c96aae983e595b2169b6e_f2ff15ed69d54a94a7f669120892c46a.png


创建配置好后,引入到store的index文件中


代码如下:


import { createSlice } from '@reduxjs/toolkit';
export const counterSlice = createSlice({
  name: 'user',
  initialState: {
    value: 1,
  },
  reducers: {
    increment: (state) => {
      // Redux Toolkit 允许我们在 reducers 中编写 mutating 逻辑。
      // 它实际上并没有 mutate state 因为它使用了 Immer 库,
      // 它检测到草稿 state 的变化并产生一个全新的基于这些更改的不可变 state
      state.value += 1;
    },
    decrement: (state) => {
      state.value -= 1;
    },
    incrementByAmount: (state, action) => {
      state.value += action.payload;
    },
  },
});
// 为每个 case reducer 函数生成 Action creators
export const { increment, decrement, incrementByAmount } = counterSlice.actions;
export default counterSlice.reducer;


3、在入口文件中配置Provider


807c0d28ae1ee4a9f87185a1a0a40c9d_0406b52ef4b649a3ad496c8baad64c87.png


注意注意注意注意注意:::::::::::


注意:这里的app入口文件一定是要是js文件,否则会报错,导致项目运行跑不起来。


代码如下:


import React from "react";
import { Provider } from "react-redux";
import store from '@/store'
export const rootContainer = (root) => {
  // console.log('rootrootrootroot', root, store);
  return (
    <Provider store={store} >
      {root}
    < /Provider>
    )
}


4、效果


最后附上效果


ea919733b2b3c1b1b3f8b63a2f9f33fb_3d0dd54e70f0474cb9dd8a07c5138282.gif


总结


以上就是在umi中使用redux的教程,不过在umi中有dva数据流插件,可以使我们在umi中使用全局数据。


目录
相关文章
|
2月前
|
JavaScript
Vite 按需引入 Ant Design Vue 3.0
Vite 按需引入 Ant Design Vue 3.0
|
2月前
|
JavaScript 前端开发
说说你对@reduxjs/toolkit的理解?和react-redux有什么区别?
@reduxjs/toolkit是一个Redux官方推荐的工具集,它的主要目的是简化和加速Redux开发流程,提供了一组工具和约定,以减少样板代码和提高开发效率。以下是对@reduxjs/toolkit的理解以及它与react-redux之间的区别:
89 0
|
8月前
|
资源调度 JavaScript 前端开发
Ant Design Vue 使用-引入 ant-design-vue并且使用
Ant Design Vue 使用-引入 ant-design-vue并且使用
235 1
|
10月前
|
设计模式 移动开发 前端开发
前端组件之Bootstrap与Ant design of Vue
前端组件之Bootstrap与Ant design of Vue
191 0
|
11月前
|
资源调度 前端开发 JavaScript
ant-design-vue+vite主题切换详细步骤(简单案例)
ant-design-vue+vite主题切换详细步骤(简单案例)
706 0
|
12月前
|
前端开发
如何在react里引入Ant Design
如何在react里引入Ant Design
|
资源调度 JavaScript
ant-design-vue:基础使用
ant-design-vue:基础使用
204 0
dva和Umi中两个小用法
dva和Umi中两个小用法
174 0
|
JavaScript 前端开发
Vue实战笔记(一) 引入Ant Design
Vue实战笔记(一) 引入Ant Design
362 0
|
JavaScript
【Vue 开发实战】基础篇 # 12:常用高级特性provide/inject
【Vue 开发实战】基础篇 # 12:常用高级特性provide/inject
81 0
【Vue 开发实战】基础篇 # 12:常用高级特性provide/inject