无法在Formik中提交TextField

时间:2019-06-12 07:57:32

标签: reactjs material-ui formik

似乎找不到第一种方法可行而第二种无效的原因。

作品:pastebin 否:pastebin

这两者之间的区别在于,第二个是<android.support.v7.widget.AppCompatButton>而不是<TextField><div>。但是我所看到的示例使<Field>正常工作,我想念什么?

2 个答案:

答案 0 :(得分:0)

您必须将组件传递给df['connect_start'] = pd.to_datetime(df['connect_start'], format='%Y/%m/%d %H:%M:%S') df.groupby('connect_start)['advertisement_id']

<Field />

答案 1 :(得分:0)

您现在正尝试像这样使用它:

<Formik
    initialValues={initialValues}
    onSubmit={handleSubmit}
    render={props => (
        <Form>
            <TextField
                id="name"
                name="name"
                label="Name"
                value={props.values.name}
                onChange={props.handleChange}
                fullWidth
            />
        </Form>
    )}
/>

...应该起作用,您在控制台中遇到任何错误吗?

如果由于某些原因而无法使用,您可以尝试通过Field渲染道具来实现。
此摘录摘自Formik文档。

 <Formik
   ...
      <Field
        name="lastName"
        render={({ field }) => (
          <input {...field} placeholder="password" />
        )}
      />
   ...
/>

如果您愿意,可以看到render组件可以使用Field道具来呈现自定义组件。

  

有3种使用<Field>渲染事物的方式。

     

除了   仅字符串的组件,每个渲染道具都传递相同的道具   您的方便。

     

Field的渲染道具是一个包含以下内容的对象

     

field:一个对象,其中包含onChangeonBlurnamevalue   字段形式:Formik状态和助手其他传递到字段的道具

在Formik文档here中查看更多信息。