React Redux 是一个流行的库,用于将 Redux 状态管理集成到 React 应用程序中。本教程将带你了解如何开始使用 React Redux。
安装 Redux 和 React-Redux
首先,确保你的项目中已经安装了 React 和 Redux。你可以使用以下命令来安装:
npm install redux react-redux
创建 Store
Redux 应用程序的核心是 Store。Store 是一个保存所有应用状态的对象。以下是如何创建一个简单的 Store:
import { createStore } from 'redux';
const initialState = {
count: 0
};
function reducer(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;
}
}
const store = createStore(reducer);
连接 React 组件到 Store
React-Redux 提供了 Provider
组件,它允许你将 Store 传递给 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')
);
使用 connect
连接组件
connect
是一个高阶组件,它允许我们将 React 组件连接到 Redux Store。
import React from 'react';
import { connect } from 'react-redux';
class Counter extends React.Component {
render() {
return (
<div>
<p>Count: {this.props.count}</p>
<button onClick={this.props.increment}>Increment</button>
<button onClick={this.props.decrement}>Decrement</button>
</div>
);
}
}
const mapStateToProps = state => ({
count: state.count
});
const mapDispatchToProps = dispatch => ({
increment: () => dispatch({ type: 'INCREMENT' }),
decrement: () => dispatch({ type: 'DECREMENT' })
});
export default connect(mapStateToProps, mapDispatchToProps)(Counter);
总结
React Redux 是一个强大的工具,可以帮助你管理复杂的应用程序状态。通过以上教程,你应该已经了解了如何开始使用 React Redux。
[center]