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()

效果

相关推荐
尘埃落定wf几秒前
LangChain AgentExecutor 完全指南:ReAct循环+Memory+LLM实战
前端·javascript·react.js
数智前线2 分钟前
百灵大模型认领“Elephant”:Ling-2.6-flash定价每百万token 0.1美元
前端·javascript·microsoft
夜影风23 分钟前
Nginx部署Vue/React项目时无法直接访问页面其他路径的问题及解决方案
vue.js·nginx·react.js
码王吴彦祖26 分钟前
AI 逆向分析国航 AirChina FECU 参数来源并实现离线生成
android·java·javascript
Z_Wonderful33 分钟前
实现图片拖动、鼠标中心点缩放、文字层跟随功能
前端·javascript·计算机外设
|晴 天|34 分钟前
前端项目多平台部署:GitHub Pages + Vercel + Cloudflare Pages 实战教程
前端·javascript·vue.js
ZC跨境爬虫37 分钟前
UI前端美化技能提升日志day2:图片优化、字体本地化与设计美感解析
前端·javascript·ui·状态模式
yivifu38 分钟前
接近完善的HTML双行夹批显示方案
前端·javascript·html·html双行夹批
M ? A39 分钟前
Vue转React终极指南:VuReact全特性语义对照
前端·javascript·vue.js·react.js·面试·开源·vureact
bcbobo21cn43 分钟前
Three.js绘制三角形网格平面
前端·javascript·平面·三角形面·基础材质