我正在使用React Native开发一个轻量级的项目,但遇到了一些挫折,我无法弄清楚。 :(
我有一个页面,其中包含一个Yes
和一个No
按钮以及一个“是/否”渲染区域,用户将可以单击任意一个按钮。根据用户的选择,头像将出现在正确的渲染区域中(单击“是”,该头像将在“是”区域中...)。但是一个用户只能单击一次。我正在尝试使用state
和setState
解决此问题,但无法使其正常工作。
我有:
this.state = {invitedState : false}
和一个函数(部分)
onPress={() => {
if (this.state.invitedState) {
onPress();
}
this.setState(prevState => ({
invitedState: !prevState.invitedState,
}));
}}
我不应该使用setState解决此问题吗? 谢谢!
答案 0 :(得分:1)
我想我理解您的问题。像这样吗?
state = {
toggleUI: true,
userToggled: false
};
handleToggleUI = e => {
this.setState(currentState => {
if ( this.state.userToggled === false ) {
return {
toggleUI: !currentState.toggleUI,
userToggled: true
};
}
});
};
答案 1 :(得分:0)
您可以尝试:
onPress{() => {
let tempVar = this.state.invitedState ? false : true;
this.setState({invitedState: tempVar});
}