如何加入允许空日期字符串[Joi]



正如标题所述,如何通过Join验证允许空的日期字符串。

添加时:

Date: ""

得到问题message: ""Date" must be a number of milliseconds or valid date string"

使用此Join验证:

"Date": Joi.date().required().allow("").allow(null).options(validationErrors);

问题:如何通过Join验证允许空日期字符串?

编辑:通过删除:.required()和/或添加.default(""),当添加Date: ""Cannot set parameter at row: 1. Wrong input for DATE type时,我会得到另一个错误

您可以简单地从上面的代码中删除required()

"Date": Joi.date().allow("").allow(null).options(validationErrors);

有效:new Date()""(空字符串(

joi版本17.2.1

const joi = require('joi');
const schema = joi.object().keys({
"Date": joi.alternatives([
joi.date(),
joi.string().valid('')
]).required()
}).required();
// success
const value = {
"Date": "",
};
// success
const value = {
"Date": new Date(),
};
// error
const value = {
"Date": null,
};
// error
const value = {
};
// error
const value = {
"Date": "invalid string"
};

const report = schema.validate(value);
console.log(report.error);

相关内容

  • 没有找到相关文章

最新更新