javascript - 无法从反应组件上的 mapStateToProps 获取值
问题描述
为什么我无法访问descriptionList
有点奇怪mapStateToProps
,因为我调用了该操作fetchDescription
,但我不确定为什么descriptionList
在组件中返回 undefined
这是 console.log 显示列表在那里:
这是我的组件:
从'../../actions/actions'导入{ fetchDescription};
const Description = (props) => {
const { descriptionList } = props;
useEffect(() => {
props.fetchDescription();
console.log("Prop", descriptionList) // return undefined
},[]);
return (
<div>
{descriptionList}
</div>
);
};
const mapStateToProps = ({descriptionList}) => {
console.log("mapStateToProps", descriptionList)
return descriptionList
};
export default connect(mapStateToProps, { fetchDescription })(Description);
解决方案
您的 mapStateToProps 函数应该返回一个包含组件所需数据的普通对象。
尝试下一个方法:
const mapStateToProps = ({descriptionList}) => {
console.log("mapStateToProps", descriptionList)
return { descriptionList };
};
https://react-redux.js.org/using-react-redux/connect-mapstate
推荐阅读
- angularjs - 打字稿:如何从公共函数访问和更新类变量
- javascript - 不导出时打字稿“未定义导出”错误
- r - 标签在 r 中的决策树图中为空白
- python - Python / Flask / WTForm / Jinja:将变量值传递给“更新页面”的 wftform 字段
- javascript - 如何复制表中的特定行(JS/JQuery)?
- python - 当第 3 行的数据长于标题长度时,Python pandas.readexcel(filepath, header=[0,1]) 失败。欢迎任何修复建议
- sql - 如何在 DoCmd.OutputTo 代码中调出变量?
- c# - 将 ValidateAntiForgeryToken 属性设置为在某个条件下工作
- javascript - Jax-rs REST 消费 Javascript 对象
- nsis - NSIS 获取产品版本解决方案失败