Javascript 将本机选择器与Formik反应

Javascript 将本机选择器与Formik反应,javascript,forms,react-native,picker,Javascript,Forms,React Native,Picker,我的基本表单工作得很好,但是,由于react-native有一些警告,我需要一些帮助来了解问题是我如何使用formik,还是将它与react-native一起使用 在这个特定的表单中,当我尝试使用formik在react native中填充选择器时,表单会在我选择一个选项后立即将选择器重置为原始值。我已经把代码剥离了,因为我觉得有些人应该在没有太多代码的情况下得到答案,但我看不出我遗漏了什么。谢谢 <Formik onSubmit={ props.onSubmit(prop

我的基本表单工作得很好,但是,由于react-native有一些警告,我需要一些帮助来了解问题是我如何使用formik,还是将它与react-native一起使用

在这个特定的表单中,当我尝试使用formik在react native中填充选择器时,表单会在我选择一个选项后立即将选择器重置为原始值。我已经把代码剥离了,因为我觉得有些人应该在没有太多代码的情况下得到答案,但我看不出我遗漏了什么。谢谢

<Formik
    onSubmit={
    props.onSubmit(props.values)
  }

  mapPropsToValues = {(props) => ({
    id: props.id,
    status: props.status
  })}

  validate={values => {
    // same as above
    let errors = {};
    return errors;
  }}

  onValueChange={ (itemIndex) => {
    this.props.values.status = itemIndex
  }}

  render= { props => (
    const { id, status } = this.props
    <View>
      <Text style={styles.textResultsHeaderStyle}>Job: {id}</Text>
      <Picker
        selectedValue={status}
        onValueChange={itemIndex => this.onValueChange}>
        <Picker.Item label="New" value="0" />
        <Picker.Item label="Requested" value="1" />
        <Picker.Item label="Responded" value="2" />
        <Picker.Item label="Closed" value="3" />
      </Picker>
      <RoundedButton disabled={props.isSubmitting} onPress={props.handleSubmit} text="SUBMIT" />
    </View>
  )}
/>
({
id:props.id,
状态:道具状态
})}
验证={values=>{
//同上
让错误={};
返回错误;
}}
onValueChange={(itemIndex)=>{
this.props.values.status=itemIndex
}}
render={props=>(
const{id,status}=this.props
作业:{id}
此.onValueChange}>
)}
/>

我刚刚在github上回答了一个类似的问题。我假设您正在使用RN中的内置选择器组件。
如果没有,则需要检查选择器组件的文档,以了解如何在更改时获取值。

问题在于
selectedValue={status}
不保存所选值。它可能没有定义。