提问人:Gustavo Sales 提问时间:11/11/2023 更新时间:11/14/2023 访问量:80
Zod coercion to date 自定义错误消息
Zod coercion to date custom error message
问:
我有一个 zod 架构,需要从 html 输入验证日期时间。 这是它的样子:
const appointmentSchema = z.object({
appointmentTime: z.coerce.date()
})
问题是当我与输入交互时,它是无效的,如下图所示。Zod 向我返回以下错误消息: .Invalid date
我想自定义此消息,但似乎没有任何效果,我已经尝试了以下操作:
...z.coerce.date({
invalid_type_error: 'Custom invalid date message. Doesn't work...'
})...
答:
0赞
Gustavo Sales
11/14/2023
#1
正如@adsy在评论中指出的那样。这是一个已知问题 https://github.com/colinhacks/zod/issues/1526
解决方法是覆盖 errorMap:
dateOfBirth: z
.date({
errorMap: (issue, { defaultError }) => ({
message: issue.code === "invalid_date" ? "That's not a date!" : defaultError,
}),
})
评论