我在使用无线电格式加载帐户页面时遇到问题。该值选择我选择的是男性还是女性。假设我选择了男性。
当帐户屏幕打开时,选择了男性按钮,但是当我单击“保存”按钮时,数据库中的性别为空。但是当我选择其中一个单选按钮时,它将保存它。
为什么我必须触摸单选按钮才能将其保存到数据库,而我已经通过使用像这样的三元运算符加载了性别:
{this.state.gender == "Male" || this.state.gender == "Female" ? (
this.state.gender == "Male" ? (
<RadioForm
radio_props={radio_props}
initial={0}
onPress={value => {
this.setState({ value });
}}
/>
) : this.state.gender == "Female" ? (
<RadioForm
radio_props={radio_props}
initial={1}
onPress={value => {
this.setState({ value });
}}
/>
) : (
<Text></Text>
)
) : this.state.gender == "" ? (
<RadioForm
radio_props={radio_props}
initial={-1}
onPress={value => {
this.setState({ value });
}}
/>
) : (
<Text></Text>
)}
我不得不将其放在额外的语句中,因为当保存的选项为Male时,它总是会使用else
选项。所以我运气很好。但是就像我上面说的,问题是。当我选择“男性”并返回页面时,当我触摸“保存”按钮时,它也会同时加载“男性”选项,但会将其另存为空。如果我来回选择这两个选项,它可以保存工作。当我将其保留为先前的选择,然后单击“保存”时,就不会了。
希望有人可以向我解释为什么会有解决方案。
感谢您的宝贵时间!