Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.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 这个check语句在react中是如何工作的?_Javascript_Reactjs - Fatal编程技术网

Javascript 这个check语句在react中是如何工作的?

Javascript 这个check语句在react中是如何工作的?,javascript,reactjs,Javascript,Reactjs,此函数在逻辑上如何工作?有没有更简单的版本可以让我更好的理解这段代码 togglePersonHandler =()=>{ const doesshow = this.state.showPerson; this.setState({showPerson : !doesshow}); } 您的代码可以按如下方式编写。我们正在使用setState调用,使用previousState中的值设置新状态。 我们得到showPerson的先前值,并使用 真值表 这就是求反运算符影响布

此函数在逻辑上如何工作?有没有更简单的版本可以让我更好的理解这段代码

togglePersonHandler =()=>{

  const doesshow = this.state.showPerson;
  this.setState({showPerson : !doesshow});

}
您的代码可以按如下方式编写。我们正在使用
setState
调用,使用
previousState
中的值设置新状态。 我们得到showPerson的先前值,并使用

真值表

这就是求反运算符影响布尔值的方式

您的代码可以按如下方式编写。我们正在使用
setState
调用,使用
previousState
中的值设置新状态。 我们得到showPerson的先前值,并使用

真值表

这就是求反运算符影响布尔值的方式


它只是从组件类状态抓取并将其设置为与值相反的值,它的一行是
this.setState({showPerson:!this.state.showPerson})如果您正在学习React,并且以前没有遇到过状态,请查看此处:@Sasha如果变量是布尔值,则您的第一条语句是正确的;如果变量是非空字符串,则它将始终返回false检查此项:@Nico true,我想,因为代码同时使用了这两种状态!变量名中的一个
show
,我假设它是一个boolIt,只是从组件类状态抓取,并将其设置为与值相反的值,它的一行是
this.setState({showPerson:!this.state.showPerson})如果您正在学习React,并且以前没有遇到过状态,请查看此处:@Sasha如果变量是布尔值,则您的第一条语句是正确的;如果变量是非空字符串,则它将始终返回false检查此项:@Nico true,我想,因为代码同时使用了这两种状态!变量名中有一个
show
,我想这是一个bool
togglePersonHandler =()=>{
    const doesshow = this.state.showPerson;
    this.setState({showPerson : !doesshow});
}
togglePersonHandler = () => {
    this.setState((previousState) => {
         return {
             showPerson : !previousState.showPerson
         }
    });
}
----------------------------
| showPerson | !showPerson |
----------------------------
|    True    |     False   |
----------------------------
|    False   |     True    |
----------------------------