如何解决为什么使用formik useField时不显示错误?
我的任务是编写代码来选择日期。
这是我现在所拥有的:
export let DatePicker = ({ label,...props }) => {
let [field,Meta,helpers] = useField(props.name)
let { value,touched,error } = Meta
if(value === null)
value = {}
let { setValue,setTouched,setError } = helpers
let days = [],meses = []
for(let i = 1; i <= 31; i++)
days.push(i)
for(let i = 1; i <= 12; i++)
meses.push(i)
console.log(error)
return (
<div>
<p>{label}</p>
<select>
{days.map(day => (
<option
onClick={() => {
setValue({ ...value,day })
setTouched(true)
if(value.day === undefined || value.mes === undefined)
setError('Error!')
}}
key={day} value={day} label={day}
/>
))}
</select>
<select>
{meses.map(mes => (
<option
onClick={() => {
setValue({ ...value,mes })
setTouched(true)
if(value.day === undefined || value.mes === undefined)
setError('Error!')
}}
key={mes} value={mes} label={mes}
/>
))}
</select>
{touched && error && (
<div className="form_error">{error}</div>
)}
</div>
)
}
在控制台中我看到“错误!”首先显示,然后立即未定义。我不明白是什么问题,帮助谁可以
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。