Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 验证不适用于React Datepicker和Formik_Reactjs_Validation_Formik_React Datepicker - Fatal编程技术网

Reactjs 验证不适用于React Datepicker和Formik

Reactjs 验证不适用于React Datepicker和Formik,reactjs,validation,formik,react-datepicker,Reactjs,Validation,Formik,React Datepicker,我一直在开发一个表单,并一直在使用Formik。出于某种原因,所有的道具(如错误和值)都被传递,但触摸不起作用。我假设触摸没有正确设置,但我不确定是什么原因造成的。我目前有: <Formik initialValues={{date: ''}} validation={{date: Yup.string().required('some error')}} onSubmit={(values) => { console.log(values) }} > {({ erro

我一直在开发一个表单,并一直在使用Formik。出于某种原因,所有的道具(如错误和值)都被传递,但触摸不起作用。我假设触摸没有正确设置,但我不确定是什么原因造成的。我目前有:

<Formik
 initialValues={{date: ''}}
 validation={{date: Yup.string().required('some error')}}
 onSubmit={(values) => { console.log(values) }}
>
 {({ errors, touched, values, setFieldValue }) => {
  <form onSubmit={handleSubmit}>
   ...
   <DatePicker 
    id="date" 
    name="date" 
    value={values.date}
    errors={errors.date}
    touched={touched.date} 
    onChange={setFieldValue}
   />
   <button type='submit'>Submit</button>
  </form>
 }}
</Formik>

我一直在检查正在发送的道具值,唯一不起作用的是触摸,因为它是未定义的。我是否在此处错误配置了日期选择器?我得到了其他的一切,我可以设置值,但触摸从未设置。我还有其他类似的领域,但工作良好。是什么导致了这个问题?

我通过将handleBlur处理程序传递给DatePicker组件,成功地解决了这个问题

 onBlur={handleBlur}
当DatePicker验证失败时,输入控件上是否存在无效类?我不是,用这种语法。