Javascript 使用相同的onClick按钮将计数器递增至2(范围0-2),然后从2递减至0
我很难在逻辑上实现这一点。我的计数会减少和增加1,所以我会停留在1,永远不会回到零Javascript 使用相同的onClick按钮将计数器递增至2(范围0-2),然后从2递减至0,javascript,reactjs,Javascript,Reactjs,我很难在逻辑上实现这一点。我的计数会减少和增加1,所以我会停留在1,永远不会回到零 使用react: 使用onClick()计数器从0上升到2 柜台:0112 单击相同的onClick()按钮,每次单击时计数器将从2减回到0 柜台:2110 ; onClick(e) { let tmp = this.state.count; tmp++; if(tmp > 2){ tmp = 0; } this.setState({ count: tmp }) }
使用react:
使用onClick()计数器从0上升到2
柜台:0112
单击相同的onClick()按钮,每次单击时计数器将从2减回到0
柜台:2110 ;
onClick(e) {
let tmp = this.state.count;
tmp++;
if(tmp > 2){
tmp = 0;
}
this.setState({
count: tmp
})
}
我认为这不是最好的答案,但它会激励你。你能看看这个例子吗:
onClick(e){
如果(this.state.action=='+'){
这是我的国家({
计数:this.state.count+1
});
}否则{
这是我的国家({
计数:this.state.count-1
});
}
if(this.state.count==1){
如果(this.state.action=='+'){
这是我的国家({
行动:'-'
});
}否则{
这是我的国家({
动作:'+'
});
}
}
}
仅使用计数,没有确定增量或减量的逻辑方法。您可以在状态轨迹“增量与减量”中添加布尔值
onClick(e) {
let count = this.state.increment ? this.state.count + 1 : this.state.count - 1;
let increment = this.state.increment;
if (count === 0) {
increment = true;
} else if (count >= 2) {
increment = false;
}
this.setState({
count,
increment,
});
}