React Redux 是一个流行的库,用于将 Redux 状态管理集成到 React 应用中。Redux 是一个独立的状态管理库,用于JavaScript应用。本教程将带您了解如何在React中使用Redux。
简介
Redux 是一个用于JavaScript应用程序的状态管理库。它通过中央状态存储来集中管理应用程序的状态。React Redux 是一个用于连接React和Redux的库。
安装
首先,确保您已经安装了Node.js和npm。然后,在您的React项目中安装Redux和React Redux:
npm install redux react-redux
创建 Redux Store
在您的项目中创建一个 store.js
文件,并初始化Redux存储:
import { createStore } from 'redux';
import rootReducer from './reducers';
const store = createStore(rootReducer);
export default store;
创建 Actions 和 Reducers
Actions 是将信息从组件传递到Redux存储的载体。Reducers 是用来处理actions并更新存储状态的函数。
// actions.js
export const increment = () => ({
type: 'INCREMENT'
});
export const decrement = () => ({
type: 'DECREMENT'
});
// reducers.js
import { increment, decrement } from './actions';
const initialState = {
count: 0
};
export default function counterReducer(state = initialState, action) {
switch (action.type) {
case 'INCREMENT':
return { ...state, count: state.count + 1 };
case 'DECREMENT':
return { ...state, count: state.count - 1 };
default:
return state;
}
}
连接 Redux 到 React
使用 Provider
组件从 react-redux
库连接Redux到React:
import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux';
import store from './store';
import App from './App';
ReactDOM.render(
<Provider store={store}>
<App />
</Provider>,
document.getElementById('root')
);
在组件中使用 Redux
在您的React组件中,您可以使用 connect
高阶组件或 useDispatch
和 useSelector
钩子来访问Redux存储。
import React from 'react';
import { useSelector, useDispatch } from 'react-redux';
import { increment, decrement } from './actions';
const Counter = () => {
const count = useSelector(state => state.count);
const dispatch = useDispatch();
return (
<div>
<p>Count: {count}</p>
<button onClick={() => dispatch(increment())}>Increment</button>
<button onClick={() => dispatch(decrement())}>Decrement</button>
</div>
);
};
export default Counter;
更多资源
想要深入了解React Redux?请查看以下链接:
希望这个教程能帮助您开始使用React Redux!