【发布时间】:2020-05-22 21:07:53
【问题描述】:
我有一个函数:
const [audioState, setAudioState] = useContext(AudioContext)
const toggleMute = () => {
console.log('audioState.isMuted', audioState.isMuted)
setAudioState((s: AudioStateType) => ({ ...s, isMuted: !s.isMuted }))
}
console.log 命中,但我没有将isMuted 切换出去。我做错了什么?
【问题讨论】:
-
useContext 不能那样工作。只是你的问题中的一个错字?如果您要返回一个数组,我们需要查看 AudioContext
-
您需要确保
AudioContext提供程序将您的应用程序包装在上游某处,而您正在使用conext,并且确实提供了一个状态数组和setter 值。请更新答案以包含您的AudioContext组件代码以及有关组件层次结构的更多详细信息。 -
如果将console.log直接移到useContext行之后呢?
标签: reactjs react-native use-state