react如何获取redux数据
获取 Redux 数据的常用方法
使用 useSelector HookuseSelector 是 React-Redux 提供的 Hook,用于从 Redux store 中提取数据。它接受一个选择器函数作为参数,返回需要的状态片段。

import { useSelector } from 'react-redux';
function MyComponent() {
const userData = useSelector(state => state.user);
return <div>{userData.name}</div>;
}
通过 connect 高阶组件
对于类组件,可以使用 connect 方法将 Redux 状态映射到组件的 props。

import { connect } from 'react-redux';
class MyComponent extends React.Component {
render() {
return <div>{this.props.userData.name}</div>;
}
}
const mapStateToProps = state => ({
userData: state.user
});
export default connect(mapStateToProps)(MyComponent);
直接访问 Store 对象
在非组件逻辑中(如工具函数或初始化脚本),可以直接通过 store.getState() 获取完整状态。
import store from './store';
const currentState = store.getState();
console.log(currentState.user);
注意事项
useSelector会订阅 Redux store,在状态变化时触发组件重新渲染。- 使用
connect时,确保组件包裹在<Provider>内,并正确传递store。 - 避免频繁计算衍生数据,可通过
reselect库优化选择器性能。






