#javascript #momentjs
#javascript #momentjs
Вопрос:
Я пытаюсь отобразить сообщение об ошибке, если дата послезавтра. Это означает, что если сегодня 05 октября, то сообщение об ошибке должно отображаться в течение нескольких дней после 06 октября (а не для 06).
Странно то, что это работает не только утром.
const validateDays = (attr, data) => {
const [date] = data[attr];
const futureDay = moment().add(1, 'days');
if (date.isAfter(futureDay)) {
return "The error message";
}
}
Комментарии:
1.
date
является строкой, а строка не имеет методаisAfter
. Было бы лучше, если бы вы предоставили более точный пример2. Ваша переменная date не является экземпляром moment или датой.
3. Я обновил свой код. итак, дата в порядке и получает сегодняшнюю дату. кажется, проблема связана с методом isAfter
4. Каково содержимое и тип
date
внутри функции? Не могли бы вы предоставитьconsole.log
это?5. @DavidBuzatu « _d: Ср. 07 октября 2020 г. 12:00:00 GMT 0200 (летнее время Центральной Европы) прото : Объект _f: «ГГГГ-ММ-DDTHH: mm: ss» _i: «2020-10-05T00:00:00» «
Ответ №1:
Мне удалось это исправить, изменив
const futureDay = moment().add(1, 'days');
Для
const futureDay = moment().endOf('day').add(1, 'days');;