React(六)——Redux


文章目录


项目地址

  • 教程作者:
  • 教程地址:
复制代码
  • 代码仓库地址:
复制代码
  • 所用到的框架和插件:

    dbt
    airflow

基本理解

store: 类似于一个全局函数,使得你在程序的任何地方都可以访问到里面的数据和方法,由多个Slice组成

action:type用来指定操作,payload:则是需要改变的数据

reducer:根据action的type和payload,来执行type的的动作,payload的数据,不会直接修改数据,只是复制

一、配置Redux store

  1. state文件夹下,创建store.js
js 复制代码
import { configureStore } from "@reduxjs/toolkit";

export const store = configureStore({
  reducer: {},
});
  1. src/index.js下,将store配置给App
js 复制代码
const root = ReactDOM.createRoot(document.getElementById("root"));
root.render(
  <React.StrictMode>
    <Provider store={store}>
      <App />
    </Provider>
  </React.StrictMode>
);

二、创建slice配置到store里并使用

  1. state文件夹下创建settingsSlice使用createSlice()创建
  1. 将上面的slice导入到store里
js 复制代码
import { configureStore } from "@reduxjs/toolkit";
import settingsReducer from "./settingsSlice";

export const store = configureStore({
  reducer: {
    settings: settingsReducer,
  },
});
  1. 使用useSelector访问state管理器的settingsSlice

三、给Slice配置reducers,用来修改初始值

  1. settingsSlice里配置自己的reducer,并导出
  1. 使用
相关推荐
风无雨几秒前
在 React 中实现数学公式显示:使用 KaTeX 和 react-katex
前端·react.js·前端框架
zfj3214 分钟前
vscode是js开发的,为什么能支持golang java等各种语言开发
javascript·vscode·golang
GDAL20 分钟前
Mapbox GL JS 核心表达式:`==` 相等判断完全教程
javascript·mapbox
二两锅巴36 分钟前
📺 无需Electron!前端实现多显示器浏览器窗口精准控制与通信
前端
炸土豆40 分钟前
防抖节流里的this传递
前端·javascript
用户40993225021240 分钟前
Vue3中动态样式数组的后项覆盖规则如何与计算属性结合实现复杂状态样式管理?
前端·ai编程·trae
山璞43 分钟前
Flutter3.32 中使用 webview4.13 与 vue3 项目的 h5 页面通信,以及如何调试
前端·flutter
努力早日退休1 小时前
Antd Image标签父元素会比图片本身高几个像素的原因
前端
林希_Rachel_傻希希1 小时前
手写Promise--教学版本
前端·javascript·面试
ETA81 小时前
`console.log([1,2,3].map(parseInt))` 深入理解 JavaScript 中的高阶函数与类型机制
前端·javascript