我正在使用Joi包来验证时间戳字段,但是如何在其上设置max()值,我希望输入时间戳小于当前时间戳
var schema = Joi.object().keys({
t: Joi.date().timestamp('unix').max(moment().unix()),
})
Run Code Online (Sandbox Code Playgroud)
但我得到的错误是:
子项“ t”失败,因为[“ t”必须小于或等于“ Sun Jan 18 1970 07:35:17 GMT + 0330(IRST)”)
我确定moment().unix()
返回的是当前时间戳,但是在这里它被强制转换为字符串。
看起来max()
和min()
函数可以做到这一点,但它们只有在以毫秒为单位指定阈值时才起作用。
t: Joi.date().timestamp('unix')
.max(moment().unix() * 1000)
.min(moment().subtract('42', 'weeks').unix() * 1000),
Run Code Online (Sandbox Code Playgroud)