为啥redux中状态未定义
Posted
技术标签:
【中文标题】为啥redux中状态未定义【英文标题】:Why is the state undefined in redux为什么redux中状态未定义 【发布时间】:2021-12-16 14:02:19 【问题描述】:我正在尝试从 redux 中的 reducer 获取一些数据,当我使用 useSelector 获取状态时,它返回 undefined
谢谢!
代码:
import foo from "foo";
import React from "react";
import useSelector from "react-redux";
function fooBar():React.FC
let data = useSelector(state:StateType=>state.fooBar);
return(
<div>
<p>data</p>
</div>
);
【问题讨论】:
因为state.fooBar
是undefined
?提供的信息很难说。
【参考方案1】:
根据给出的信息,您还没有从函数体返回状态值。
let data = useSelector(state:StateType=>state.fooBar); // <-- no return!!
您应该从函数中显式返回state.fooBar
:
const data = useSelector(state: StateType =>
return state.fooBar;
);
或者使用隐式箭头函数返回(注意 ...
中没有函数体):
const data = useSelector(state: StateType => state.fooBar);
【讨论】:
以上是关于为啥redux中状态未定义的主要内容,如果未能解决你的问题,请参考以下文章
为啥我的 Redux reducer 认为我的状态是未定义的?
react 和 Redux 的新手,为啥我会通过未定义的商店?
为啥使用 redux devtools 在我的 _reduxDevtools 对象中未定义 ActionCreators 属性?