【发布时间】:2019-08-03 16:39:54
【问题描述】:
我正在尝试验证将包括整数和浮点值的数值。以下是我的实现。
Joi 架构。
const numcheckschema = Joi.object().keys({
v1:Joi.number().empty("").allow(null).default(99999),
v2:Joi.number().empty("").allow(null).default(99999),
v3:Joi.number().empty("").allow(null).default(99999)
})
对象
objnum={
v1:"15",
v2:"13.",
v3:"15"
}
objValidated = Joi.validate(objnum, numcheckschema);
console.log(objValidated);
当我执行上述代码时,我得到一个错误
ValidationError: child "v2" 失败,因为 ["v2" 必须是数字]
根据文档,当我们尝试将任何 numeric value 作为 string 传递时,它会将值转换为数字,但在这种情况下,我的值为 13 . 无法转换为数字并抛出错误。
有什么方法可以将这个值转换为13.0
【问题讨论】:
标签: node.js validation schema joi hapi