Я хочу проверить, является ли время окончания после времени запуска, используя следующий код. Но по какой-то причине он не работает.
const sTime = moment(startTimeValue,'HH:mm');
const eTime = moment(endTimeValue,'HH:mm');
let x = eTime.isBefore(sTime);
Я использую угловое усиление ngb-timepicker для времени начала и окончания. хочу проверить это.
starrTimeValue - это объект со значением: {час: 10, минута: 0, секунда: 0}
вот мой полный код для пользовательской проверки углового загрузчика ngb-время выбора:
export function SessionTimesValidator(startTimeControlName: string, endTimeControlName: string): ValidatorFn {
return (formGroup: FormGroup): { [key: string]: any } | null => {
const startTimeControl = formGroup.get(startTimeControlName);
const endTimeControl = formGroup.get(endTimeControlName)
const startTimeValue = startTimeControl.value;
const endTimeValue = endTimeControl.value;
if (startTimeControl.pristine || endTimeControl.pristine) {
return null;
}
let validationResult = null;
console.log(moment());
const sTime = moment(startTimeValue,'HH:mm');
const eTime = moment(endTimeValue,'HH:mm');
let x = eTime.isBefore(sTime);
if(startTimeValue !== null && endTimeValue !== null &&
((startTimeValue.hour >= endTimeValue.hour) || (startTimeValue.minute >= endTimeValue.minute))) {
validationResult = {'sessiontimes': {value: 'Start Time must be before the End Time'}};
}
return validationResult;
};
}
Спасибо