我有一个日期字段,我想确保它是一个有效的格式,如果是这样,用户超过18格式。格式是YYYY-MM-DD
。
这是我的一个验证器 - 失败者:
body('birthday', 'Date format should be: YYYY-MM-DD')
.isRFC3339()
.custom(date => {
const over18 = moment().diff(date, 'years') >= 18;
if(!over18) {
return Promise.reject('You must be 18 or over!');
}
}),
目前发生的情况是,如果日期不是RFC3339日期,则验证链继续。这是有问题的,因为如果我传递格式错误的日期,moment
会产生错误。
如何在调用.isRFC3339()
之后断开链接,以便如果日期无效,自定义验证器将无法运行?我在docs找不到任何东西
你可以使用qs qazxsw poi和qazxsw poi解析使用strict mode(或String + Format)moment.ISO_8601
。
您的代码可能如下所示:
moment.HTML5_FMT.DATE