繁体   English   中英

Joi小数,小于8位小数

[英]Joi decimal, less than 8 decimal places

在为 Joi 设置库模式时需要您的帮助。 任务,如果逗号后的字符数超过8个字符,则需要进行验证。 我是使用自定义验证来完成的,但我想在项目中的任何地方使用 Joi 使用:

   myField: Joi.number()
    .positive()
    .less(999999999999)
    .required()
    .error(() => ({
      message: 'Error',
    })),

4,23443234 - 有效数据

4,234432341 - 无效数据

您可以通过阅读Joi 的文档找到解决方案:

number.precision(limit)

指定最大小数位数,其中:

  • limit - 允许的最大小数位数。
 const schema = Joi.number().precision(2);

默认情况下,使用precision只会将小数四舍五入到指定的最大值。 如果您希望它无法通过验证,请根据文档convert设置为false

joi.validate(objectToValidate, schema, {convert:false});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM