Javascript 第一次onchange复选框执行不';无法正确运行功能反应本机帮助请

Javascript 第一次onchange复选框执行不';无法正确运行功能反应本机帮助请,javascript,reactjs,typescript,react-native,Javascript,Reactjs,Typescript,React Native,在我的第一次执行中,我的函数不起作用。 我需要一个加或减数字的复选框。但它在第一次运行时不起作用,只在下一次运行时起作用。console.log()可以工作,但它只在第二次运行之后进行添加或减去 constructor(props) { super(props); this.state = { valOp1: false, cotacao: 0.0, cont: 1, }; } op1 = value => {

在我的第一次执行中,我的函数不起作用。 我需要一个加或减数字的复选框。但它在第一次运行时不起作用,只在下一次运行时起作用。console.log()可以工作,但它只在第二次运行之后进行添加或减去

  
  constructor(props) {
    super(props);
    this.state = {
      valOp1: false,
      cotacao: 0.0,
      cont: 1,
    };
  }

  op1 = value => {{
    this.setState({ valOp1: !this.state.valOp1}); 
    if(this.state.valOp1 == true){
      console.log('selected');
      this.setState({ cotacao: this.state.cotacao + 10});
      console.log(this.state.cotacao);
    }
    else if(this.state.valOp1 == false){
      console.log('not selected');
      this.setState({ cotacao: this.state.cotacao - 10});
      console.log(this.state.cotacao);
    }  
  }
  this.funcop1();
}
  funcop1(){
       
  }

  render(){
    return(
    <View>
    <TextInput
    label="Valor Fipe"
    value={this.state.val}
    maxLength={11}
    keyboardType="numeric"
    onChangeText= {(val) => this.setState({val})}
    />
    <View style={styles.container}>
      <Text style={styles.checkTitle}>Opcionais:</Text>
      <View style={styles.checkboxContainer}>
       <CheckBox
         value={!!this.state.valOp1}
         onValueChange={this.op1}
         style={styles.checkbox}
        />
        <Text style={styles.label}>Do you like React Native?</Text>
      </View>
    </View>
    </View>
    );
  }
}```

建造师(道具){
超级(道具);
此.state={
valOp1:错,
科塔科:0.0,
续:1,,
};
}
op1=值=>{{
this.setState({valOp1:!this.state.valOp1});
if(this.state.valOp1==true){
console.log('selected');
this.setState({cotaco:this.state.cotaco+10});
console.log(this.state.cotaco);
}
else if(this.state.valOp1==false){
console.log(“未选择”);
this.setState({cotaco:this.state.cotaco-10});
console.log(this.state.cotaco);
}  
}
this.funcop1();
}
funcop1(){
}
render(){
返回(
this.setState({val})}
/>
Opcionais:
你喜欢中国菜吗?
);
}
}```

您不能调用setState并期望立即更改状态,因为setState是异步的。只需计算新的state.valOp1并使用该值计算Cotaco,然后设置一次状态

类应用程序扩展了React.Component{
建造师(道具){
超级(道具);
此.state={
valOp1:错,
科塔科:0.0,
续:1,,
};
}
op1=()=>{
//首先计算valOp和cotacao的新值
const valOp1=!this.state.valOp1;
const cotaco=valOp1
?本州科塔科+10
:this.state.cotaco-10;
//只需设置一次状态
这个.setState({valOp1,cotaco});
};
render(){
返回(
{JSON.stringify(this.state,未定义,2)}
);
}
}
ReactDOM.render(,document.getElementById('root'))

您不能调用setState并期望立即更改状态,因为setState是异步的。只需计算新的state.valOp1并使用该值计算Cotaco,然后设置一次状态

类应用程序扩展了React.Component{
建造师(道具){
超级(道具);
此.state={
valOp1:错,
科塔科:0.0,
续:1,,
};
}
op1=()=>{
//首先计算valOp和cotacao的新值
const valOp1=!this.state.valOp1;
const cotaco=valOp1
?本州科塔科+10
:this.state.cotaco-10;
//只需设置一次状态
这个.setState({valOp1,cotaco});
};
render(){
返回(
{JSON.stringify(this.state,未定义,2)}
);
}
}
ReactDOM.render(,document.getElementById('root'))