提问人:Aslan 提问时间:11/14/2023 更新时间:11/14/2023 访问量:28
允许验证器中的空字符串 .js
Allowing empty strings in Validator.js
问:
我正在尝试结合Zod和Validator.js来验证表单数据。我想允许可选字段使用空字符串。我认为这个片段应该有效,但它没有,我无法弄清楚:""
const alpha = (maxChar: number = 1) =>
z
.string()
.toUpperCase()
.max(maxChar)
.refine((value) =>
validator.isAlpha(value.replaceAll(" ", ""), "en-US", { ignore: "" })
)
答:
0赞
Shaavin
11/14/2023
#1
问题出在您对房产的使用上。此属性正在检查条件,对于空字符串返回 false。您可以通过以下简单调整启用空字符串:.refine
validator.isAlpha(value)
const alpha = (maxChar: number = 1) =>
z
.string()
.toUpperCase()
.max(maxChar)
.refine((value) =>
validator.isAlpha(value) || value.length === 0
); // ^^^^^^ here!
评论