Валидатор before
не работает так, как вы думаете.Требуется ссылка на другое поле, содержащее дату - представьте, что если вы делаете поля startDate и endDate, вам нужно убедиться, что startDate находится перед endDate.Вот что это делает.
Валидатор, который вы должны использовать: date_between
, вот так:
<input type="text"
v-model="startDate"
name="StartDate"
v-validate="{ date_format: 'dd/MM/yyyy', date_between:['01/01/1990',maxStartDate] }"/>
И мне пришлось изменить, как maxStartDate определяется следующим образом:
maxStartDate: function() {
return moment()
.startOf('month')
.add(1, 'months')
.endOf('month').format('DD/MM/YYYY');
}
Рабочий пример: https://codepen.io/anon/pen/NZaLzg