javascript - 带有 Formik 的 React-Native 选择器

标签 javascript forms react-native picker

我的基本表单工作正常,但是,由于 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>
  )}
/>

最佳答案

我刚刚在github上回答了一个类似的问题。我想您正在使用 RN 中的内置选择器组件。
如果没有,那么您需要检查选择器组件的文档以了解如何获取更改时的值。
https://github.com/jaredpalmer/formik/issues/1378#issuecomment-480189488

关于javascript - 带有 Formik 的 React-Native 选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47961669/

相关文章:

javascript - PHP 中用于运行用户脚本的解释语言

javascript - 单击按钮更改 javascript/css 中 <body> 的文本字体大小

php - 如何在一个表单中插入4个文件上传

php - 页面刷新时如何防止表单重新提交(F5/CTRL+R)

javascript - 从外部 <form> 标签获取表单对象

javascript - firebase 回调中无法识别异步函数

javascript - 如何修复 null 不是对象 React Native Splash Screen

android - 没有导航 Prop 的 React Navigation 在 Release模式下不起作用(Android 签名的应用程序)

javascript - 将 <p> 转换为 <p> 并用于格式化 html

javascript - 这些 var 声明是样式问题还是功能问题?