useSelector returns 在 console.log 上未定义
useSelector returns undefined on console.log
代码
const Question = () => {
const idd = useSelector(state => state.idd)
const questions = useSelector(state => state.questions)
console.log(questions)
console.log(idd)
return(
<>
</>
)
}
const mapStateToProps = ({ authedUser, questions, users }, { id }) => {
const idd = id
console.log(idd)
return {
authedUser,
questions,
users,
idd
}
}
console.log(问题)打印问题的结果
console.log(idd) 的结果是 udefined
你能帮帮我吗?
我只是通过在 Component=(props) 中添加 props 来直接从 props 获取它
和 console.log(props.id)
你的 Redux store 中似乎没有名为“idd”的东西?在那种情况下,是的,在这里获得 undefined
是完全正常的 - useSelector
只允许您访问您的 Redux 商店。
useSelector
与 mapStateToProps
无关(顾名思义,它只是将状态映射到道具),你不应该一起使用 useSelector
和 connect/mapStateToProps
并尽可能选择 useSelector
。
代码
const Question = () => {
const idd = useSelector(state => state.idd)
const questions = useSelector(state => state.questions)
console.log(questions)
console.log(idd)
return(
<>
</>
)
}
const mapStateToProps = ({ authedUser, questions, users }, { id }) => {
const idd = id
console.log(idd)
return {
authedUser,
questions,
users,
idd
}
}
console.log(问题)打印问题的结果
console.log(idd) 的结果是 udefined
你能帮帮我吗?
我只是通过在 Component=(props) 中添加 props 来直接从 props 获取它 和 console.log(props.id)
你的 Redux store 中似乎没有名为“idd”的东西?在那种情况下,是的,在这里获得 undefined
是完全正常的 - useSelector
只允许您访问您的 Redux 商店。
useSelector
与 mapStateToProps
无关(顾名思义,它只是将状态映射到道具),你不应该一起使用 useSelector
和 connect/mapStateToProps
并尽可能选择 useSelector
。