如何仅在有条件的情况下设置状态?
How can I set a state only if there is a condition?
我在文本视图中有一个百分比在变化,但它不能超过 100%。我使用一个带有 setstate 的函数,我希望如果文本视图中的百分比超过 100%,它会以 100% 变化。
像这样:
onPressLearnMore= () => {
this.setState({
rareperc1: (this.state.rareperc2*this.state.boxes),
rareperc:parseFloat(this.state.rareperc1).toFixed(4),
if(rareperc==100){
rareperc:100,
}
...
});
}
实际代码为:
onPressLearnMore= () => {
this.setState({
rareperc1: (this.state.rareperc2*this.state.boxes)
rareperc:parseFloat(this.state.rareperc1).toFixed(4),
...
});
}
你可以这样做。
rareperc:this.state.rareperc1>100?100:parseFloat(this.state.rareperc1).toFixed(4)
我用这个解决了:
onPressLearnMore= () => {
var rarepervalue = (this.state.rareperc2*this.state.boxes)+
(this.state.boxes*this.state.incremento1);
if(rarepervalue>100) rarepervalue=100;
this.setState({
percentages: percentuale,
rareperc1: rarepervalue,
rareperc:parseFloat(this.state.rareperc1).toFixed(4),
我在文本视图中有一个百分比在变化,但它不能超过 100%。我使用一个带有 setstate 的函数,我希望如果文本视图中的百分比超过 100%,它会以 100% 变化。 像这样:
onPressLearnMore= () => {
this.setState({
rareperc1: (this.state.rareperc2*this.state.boxes),
rareperc:parseFloat(this.state.rareperc1).toFixed(4),
if(rareperc==100){
rareperc:100,
}
...
});
}
实际代码为:
onPressLearnMore= () => {
this.setState({
rareperc1: (this.state.rareperc2*this.state.boxes)
rareperc:parseFloat(this.state.rareperc1).toFixed(4),
...
});
}
你可以这样做。
rareperc:this.state.rareperc1>100?100:parseFloat(this.state.rareperc1).toFixed(4)
我用这个解决了:
onPressLearnMore= () => {
var rarepervalue = (this.state.rareperc2*this.state.boxes)+
(this.state.boxes*this.state.incremento1);
if(rarepervalue>100) rarepervalue=100;
this.setState({
percentages: percentuale,
rareperc1: rarepervalue,
rareperc:parseFloat(this.state.rareperc1).toFixed(4),