Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 类型错误:如果';假';没有按预期工作_Javascript_Reactjs_If Statement - Fatal编程技术网

Javascript 类型错误:如果';假';没有按预期工作

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

我正在使用React.js做一个PWA测验应用程序,我遇到了以下问题:

我可以得到只有一个答案的问题对象,有些问题有多个答案

如果只有一种可能的答案,我想强制用户只有一种可能

为此,我制定了以下算法:

  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再次感谢!