我试图将按钮按下的结果传递到Redux状态。用户可以选择"不"one_answers"Yes">
我想将它添加到状态中,然后将用户导航到下一个屏幕。下面是我如何声明状态的:
const [state, setState ] = useState ({
isDisabled: true,
showAnswer: false,
uuid: '',
})
const [value, onChange] = useState('')
const [codeValue, onCodeChange] = useState('')
state = {
animation: new Animated.Value(0),
};
const handleOnChange = (name, value) => {
setState({
...state,
[name] : value,
});
console.log([name],':',value)
};
这是按钮。
<Button
title={"No"}
style = {GettingToKnowYouStyle.choices}
onPress={() => navigation.navigate ('Employment')}
>
No
</Button>
我知道我做错了很多,请帮助我。
小心,你把事情搞混了!useState
是指组件状态,而不是redux状态。
你需要一个redux状态(又名reducer
),至少一个action
来调度和处理副作用的东西(我建议rxjs
和redux-observable
或saga
)。
到redux
的钩子被称为useDispatch
,从文档。
我建议如下:用应答发送动作1,更新状态。状态缩减成功后,调度动作2处理路由变化。试着阅读文档(基础教程是一个很好的起点),如果你有一些详细的问题,可以回来问。
您应该使用useDispatch()来更改redux状态。