我有一个自定义验证函数,但即使它没有返回错误,表单仍然无效。
我将以下属性传递给 Formik:
validate={({ import_files }) => {
return [...import_files.values()].length === 0
? { import_files: 'Please choose a file to import' }
: {};
}}
onSubmit={onSubmit}
initialValues={{ import_files: new Map([]) }}
这是验证后 formik 对象的控制台日志 https://i.stack.imgur.com/l53Ou.jpg
正如您所看到的,该字段已被触摸,没有错误,但是isValid
还是false
。
为什么表格仍然无效?
isValid
有时会产生意想不到的效果。
您应该考虑将验证检查切换为errors
array.
如果没有错误errors
然后一切都好。
const isValid = !Object.keys(errors).length
您可以在此开放问题中找到更多详细信息:https://github.com/jaredpalmer/formik/issues/1116 https://github.com/jaredpalmer/formik/issues/1116
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)