我正在尝试验证用户输入,当用户键入错误的输入时发送通知。 这就是我到目前为止所拥有的。
const { BadRequest } = require('@feathersjs/errors');
module.exports = function () {
return async context=> {
const { data } = context;
if(typeof data.taskid !== 'string' || data.taskid.trim() === '') {
throw new BadRequest('TaskId is invalid.');
}
if(typeof data.testresource !== 'string' || data.testresource.trim() === '') {
throw new BadRequest('Test resource is invalid.');
}
//need check again
if((new Date(data.startdate)).getTime() < 0) {
throw new BadRequest('Start date must be a date');
return context;
};
};
问题是我测试时验证日期不正确。谢谢您的时间。
答案 0 :(得分:2)
尝试使用Moment JS验证日期,也可以使用它来设置日期格式,设置时区等。
https://www.htmlgoodies.com/beyond/javascript/date-validation-using-moment.js.html
if(moment(data.startdate,["MM-DD-YYYY", "YYYY-MM-DD"],true).isValid()==false) {
throw new BadRequest('Start date must be a date');
}