是的,Formik 没有 Datepicker 值
Yup with Formik doesn't Datepicker value
我一直在尽一切努力使这个表单与 yup 一起工作,但是当使用日期选择器时,该值既没有在字段中注册也没有与 yup 一起注册。
我的相关导入是 formik、yup、useForm 和 yupResolver。
我删除了不相关的代码以保存 space。我拥有的其他字段是名字、姓氏、电子邮件和 phone 号码,它们都按应有的方式工作,当值不符合条件时会注册并显示错误。
我有一个带有 formik 元素的控制台日志,它记录了所有值,并且所有值都被正确记录,除了日期,它是空的。
const Form = () => {
const [fromDate, setFromDate] = useState(new Date());
return (
<>
<div>
<Formik validationSchema={formVal}>
{({ values,
errors) => (
<form onSubmit={handleSubmit(onSubmit)}>
<div>
<DatePicker
id="fromDate"
onChange={(date) => {
setFieldValue(date);
}}
/>
</div>
<Button type="submit" ></Button>
</form>
)}
</Formik>
</div>
</>
)}
您似乎没有正确使用 'setFieldValue';
第一个参数应该是表单的字段名称。
应该是这样的:setFieldValue('fromDate', date);
请参阅 https://formik.org/docs/api/formik 以供参考。
另外,确保变量 'date' 是 Date 类型而不是包含实际日期值的对象。
我一直在尽一切努力使这个表单与 yup 一起工作,但是当使用日期选择器时,该值既没有在字段中注册也没有与 yup 一起注册。 我的相关导入是 formik、yup、useForm 和 yupResolver。
我删除了不相关的代码以保存 space。我拥有的其他字段是名字、姓氏、电子邮件和 phone 号码,它们都按应有的方式工作,当值不符合条件时会注册并显示错误。
我有一个带有 formik 元素的控制台日志,它记录了所有值,并且所有值都被正确记录,除了日期,它是空的。
const Form = () => {
const [fromDate, setFromDate] = useState(new Date());
return (
<>
<div>
<Formik validationSchema={formVal}>
{({ values,
errors) => (
<form onSubmit={handleSubmit(onSubmit)}>
<div>
<DatePicker
id="fromDate"
onChange={(date) => {
setFieldValue(date);
}}
/>
</div>
<Button type="submit" ></Button>
</form>
)}
</Formik>
</div>
</>
)}
您似乎没有正确使用 'setFieldValue'; 第一个参数应该是表单的字段名称。
应该是这样的:setFieldValue('fromDate', date); 请参阅 https://formik.org/docs/api/formik 以供参考。
另外,确保变量 'date' 是 Date 类型而不是包含实际日期值的对象。