我的复选框通过了对与错,但是我需要0或1

时间:2019-12-27 18:28:13

标签: javascript reactjs react-native

我对React进行了培训,我已经将我的复选框指定为true或false,但是我的api需要接收1或0,我该如何进行更改?

这是我的checkboc代码

const [vGender, setvGender] = useState(true);
 <View style={styles.checkbox} >
            <CheckBox
              containerStyle={styles.checkbox}
              textStyle={styles.checkboxTxt}
              uncheckedColor={'#b3b4b5'}
              checkedColor={"#911830"}
              title="Male"
              checkedIcon="stop"
              checked={vGender}
              onPress={()=>setvGender(true)}
              //onPress={() => this.setState({ checked1: !this.state.checked1, checked2: this.state.checked1 })}
            />
            <CheckBox
              containerStyle={styles.checkbox}
              textStyle={styles.checkboxTxt}
              uncheckedColor={'#b3b4b5'}
              checkedColor={"#911830"}
              title="Female"
              checkedIcon="stop"
              checked={!vGender}
              onPress={()=>setvGender(false)}
              //onPress={() => this.setState({ checked1: !this.state.checked1, checked2: this.state.checked1 })}
            />
          </View>    

1 个答案:

答案 0 :(得分:1)

使用1和0作为状态,并相应地维护复选框状态

const [vGender, setvGender] = useState(1);
 <View style={styles.checkbox} >
            <CheckBox
              containerStyle={styles.checkbox}
              textStyle={styles.checkboxTxt}
              uncheckedColor={'#b3b4b5'}
              checkedColor={"#911830"}
              title="Male"
              checkedIcon="stop"
              checked={vGender===1 ? true : false}
              onPress={()=>setvGender(1)}
              //onPress={() => this.setState({ checked1: !this.state.checked1, checked2: this.state.checked1 })}
            />
            <CheckBox
              containerStyle={styles.checkbox}
              textStyle={styles.checkboxTxt}
              uncheckedColor={'#b3b4b5'}
              checkedColor={"#911830"}
              title="Female"
              checkedIcon="stop"
              checked={vGender===0 ? true : false}
              onPress={()=>setvGender(0)}
              //onPress={() => this.setState({ checked1: !this.state.checked1, checked2: this.state.checked1 })}
            />
          </View>