【发布时间】:2021-05-19 00:48:07
【问题描述】:
我想验证作为日期的字符串值在 nodejs 模式对象中是否有效。我用于其他验证的包是来自庆祝的 Joi 包。另外,我不希望将值的类型更改为日期,因此不能使用 Joi.date()。
【问题讨论】:
我想验证作为日期的字符串值在 nodejs 模式对象中是否有效。我用于其他验证的包是来自庆祝的 Joi 包。另外,我不希望将值的类型更改为日期,因此不能使用 Joi.date()。
【问题讨论】:
如果你将Joi.date与any.raw([enabled])结合使用,你仍然可以使用它:
输出原始未触及的值而不是转换后的值 其中:
enabled - 如果为 true,则返回原始结果, 否则为验证值。默认为真。
请注意,原始值仅在验证后应用,并且任何 对该值的引用使用的是经过验证的值,而不是原始值。
例如:
const timestampSchema = Joi.date().timestamp();
timestampSchema.validate('12376834097810');
// { error: null, value: Sat Mar 17 2362 04:28:17 GMT-0500 (CDT) }
const rawTimestampSchema = Joi.date().timestamp().raw();
rawTimestampSchema.validate('12376834097810');
// { error: null, value: '12376834097810' }
【讨论】: