您好,我正在尝试使用 Formik + Yup 来验证我的表单。我坚持验证日期的数字,但在添加数字字段后触摸任何字段都会使应用程序崩溃。如何使用 Yup 正确验证数字的最小值和最大值?
查看我的代码框: https ://codesandbox.io/s/ly027lklq7
如果您注释掉全天日期字段,应用程序将正常运行。
您好,我正在尝试使用 Formik + Yup 来验证我的表单。我坚持验证日期的数字,但在添加数字字段后触摸任何字段都会使应用程序崩溃。如何使用 Yup 正确验证数字的最小值和最大值?
查看我的代码框: https ://codesandbox.io/s/ly027lklq7
如果您注释掉全天日期字段,应用程序将正常运行。
在访问嵌套项之前缺少对象验证touched
会导致问题。
例如:
...
props.errors.address && props.errors.address.line1 && props.touched.address.line1
...
...
props.errors.dob && props.errors.dob.day && props.touched.dob.day
...
应该,
...
props.errors.address && props.errors.address.line1 && props.touched.address && props.touched.address.line1
...
...
props.errors.dob && props.errors.dob.day && props.touched.dob && props.touched.dob.day
...
现有的验证工作正常。
代码沙盒中的固定代码: https ://codesandbox.io/s/2omxr4jopp