react使用react-redux状态管理

1、安装

复制代码
npm install react-redux

2、创建store.js

复制代码
import { createStore } from 'redux';

// 定义初始状态
const initialState = {
    counter: 888
};

// 定义 reducer 函数,根据 action 类型更新状态
function reducer(state = initialState, action) {
    switch (action.type) {
        case 'INCREMENT':
            return {...state, counter: state.counter + 1 };
        case 'DECREMENT':
            return {...state, counter: state.counter - 1 };
        default:
            return state;
    }
}

// 创建 store
const store = createStore(reducer);

export default store;

3、在主文件index.tsx全局引入

复制代码
import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
// redux全局参数
import { Provider } from 'react-redux';
import store from './store/store.js';

const root = ReactDOM.createRoot(
  document.getElementById('root') as HTMLElement
);
root.render(
	<Provider store={store}>
		<React.StrictMode>
			<App />
		</React.StrictMode>
	</Provider>
);
reportWebVitals();

4、使用

1、在两个tex文件引入使用查看效果

第一个tex文件

复制代码
//引入
import store from '../store/store';

console.log("大得333")
//获得打印
console.log(store.getState().counter)
//修改
store.getState().counter = 6666

第二个文件

复制代码
import store from './store/store';
function dade(){
	// 获取状态
	console.log("大得")
	console.log(store.getState().counter)
	store.getState().counter = 999
	console.log(store.getState().counter)
}
dade()

效果

相关推荐
奋斗吧程序媛8 分钟前
Vue Router的路由模式
前端·javascript·vue.js
by__csdn8 分钟前
Vue.js 生命周期全解析:从创建到销毁的完整指南
前端·javascript·vue.js·前端框架·ecmascript·css3·html5
m0_4711996318 分钟前
【JavaScript】前端如何处理服务端部分接口加解密
开发语言·前端·javascript
离别又见离别36 分钟前
vue使用js渲染组件案例(公用打印组件动态渲染)及静默打印实现
前端·javascript·vue
黛色正浓1 小时前
【React】极客园案例实践-编辑文章模块和项目打包
前端·react.js·前端框架
徐同保1 小时前
n8n项目编译时取消类型检测,提交代码时取消校验
开发语言·前端·javascript
GIS遥遥1 小时前
如何用 Cesium 实现楼栋单体化?前端 WebGIS 实战教程
前端·javascript·cesium·三维gis开发
三小河1 小时前
React 插槽(Slot)完全指南:从基础到实战的灵活组件通信方案
前端·javascript·面试
布茹 ei ai2 小时前
1、基于 GEE 的 NDVI 交互式时序可视化与趋势分析工具
javascript·gee·遥感图像处理·谷歌云平台
```???2 小时前
666666999999
javascript·tcp/ip·node.js