如何验证 FeathersJS 中的日期格式

How can I validate Date format in FeatherJS

我正在尝试验证用户输入,当用户输入错误时发送通知。 这是我目前所拥有的。

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;
  };
};

问题是我测试时验证日期不正确。感谢您的宝贵时间。

尝试使用 Moment JS 来验证日期,您也可以使用它来格式化日期、设置时区等。

https://momentjs.com/

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');
}