我试图对一个数字进行长度验证,但它似乎无法正常工作
这是我的模式:
const schema = createJoiSchema({
email: Joi.string().required(),
password: Joi.string().required(),
phone: Joi.number().integer().min(10).max(10).required(),
})
这是我的测试对象:
{
"email":"miguel@gmail.com",
"password":"miguel123",
"phone": 1234456789
}
我得到了这个错误:
"ValidationError: "phone" must be less than or equal to 10.
由于在整数上使用min
和max
,它实际上应该在10^9(最小值有10位(和10^10-1(最大值有10位数(之间:
const schema = createJoiSchema({
email: Joi.string().required(),
password: Joi.string().required(),
phone: Joi.number().integer().min(1000000000).max(9999999999).required(),
})
又名
const schema = createJoiSchema({
email: Joi.string().required(),
password: Joi.string().required(),
phone: Joi.number().integer().min(10**9).max(10**10 - 1).required(),
})