Javascript 第一次onchange复选框执行不';无法正确运行功能反应本机帮助请
在我的第一次执行中,我的函数不起作用。 我需要一个加或减数字的复选框。但它在第一次运行时不起作用,只在下一次运行时起作用。console.log()可以工作,但它只在第二次运行之后进行添加或减去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 => {
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'))代码>