javascript - 在 Joi 模式中添加 OR 以进行时间检查
问题描述
我有下一张支票
endTime: Joi.date().iso().min(Joi.ref('startTime'))
我需要添加如下内容:endTime:
Joi.date().iso().min(Joi.ref('startTime')) or Joi.date().iso().equal(Joi.ref('startTime'))
解决方案
您可以使用Joi.alternatives来测试多个验证:
Joi.object({
startTime: Joi.date().iso(),
endTime: Joi.alternatives().try(
Joi.date().iso().min(Joi.ref('startTime')),
Joi.date().iso().equal(Joi.ref('startTime')),
)
})
无论如何,我认为您不需要使用.equal
.
通过使用.min
你是说你的endTime
必须大于或等于startTime
。
推荐阅读
- sharepoint - 使用 csom 防止一组用户访问共享文档
- reactjs - 如何从 React 客户端访问 JHipster 实体?
- swift - 如何将文件移动到 iOS 13 中的文档目录中?
- finance - 查找财务报表
- git - 将一半完成的工作推到回购是一种不好的做法吗?
- android - ListView 和 R 字符串目录
- memory-leaks - Directx 11 CreateVertexShader 内存泄漏
- css - 如何使用 CSS 覆盖各种浏览器的打印首选项?
- oracle - 尝试合并时合并条件在 oracle 中不起作用
- android - 如何在 android Textview 上使用斜线制作可点击的 url 链接