Javascript 类型错误:如果';假';没有按预期工作
我正在使用React.js做一个PWA测验应用程序,我遇到了以下问题: 我可以得到只有一个答案的问题对象,有些问题有多个答案 如果只有一种可能的答案,我想强制用户只有一种可能 为此,我制定了以下算法:Javascript 类型错误:如果';假';没有按预期工作,javascript,reactjs,if-statement,Javascript,Reactjs,If Statement,我正在使用React.js做一个PWA测验应用程序,我遇到了以下问题: 我可以得到只有一个答案的问题对象,有些问题有多个答案 如果只有一种可能的答案,我想强制用户只有一种可能 为此,我制定了以下算法: clickOnChoice = (key) => { if (this.state && this.state.correctAnswers) { let newChoices = INITIAL_CHOICES; // {} if (th
clickOnChoice = (key) => {
if (this.state && this.state.correctAnswers) {
let newChoices = INITIAL_CHOICES; // {}
if (this.state.multiChoice) {
console.log("this.state.multiChoice:", this.state.multiChoice); // this.state.multiChoice: false ???
newChoices = JSON.parse(JSON.stringify(this.state.choices)); // {answer_b: 1}
}
newChoices[key] = 1 - (newChoices[key] | 0); // {answer_b: 1, answer_a: 1}
this.setState({
choices: newChoices
}, this.updateNextButtonState);
}
}
但是,执行似乎忽略了条件if(this.state.multiChoice)
我错过了什么
也许我需要一杯咖啡。。。☕
无论如何,先谢谢你 很可能您正在尝试检查字符串“false”,而不是实际的布尔值
如果(this.state.multiChoice=='true')或将state属性的值更改为true | | false请确保属性值为
false
,而不是原来的字符串“false”
:D再次感谢!