Реагировать AG-Grid: фильтр даты в диапазоне - не работает, если вы измените дату
Я пытаюсь настроить фильтр даты на ag-grid по этой ссылке. Основное отличие состоит в том, что ag-grid предпочитает формат даты дд / мм / гггг, тогда как мои даты указаны в гггг-мм-дд.
comparator:function (filterLocalDateAtMidnight, cellValue){
let dateParts = cellValue.split("-");
let cellDate = new Date(Number(dateParts[0]), Number(dateParts[1]) - 1, Number(dateParts[2]));
if (cellDate < filterLocalDateAtMidnight) {
return -1;
} else if (cellDate > filterLocalDateAtMidnight) {
return 1;
} else {
return 0;
}
Приведенный выше код работает условно, хотя я заметил особый случай. при выборе условия фильтра даты "inRange" и установке даты, например:
dateFrom = 2017-07-13
dateTo = 2017-08-20
он работает нормально, и я вижу записи между этими двумя датами, но если вы измените даты, то есть:
dateFrom = 2017-08-20
dateTo = 2017-07-13
Нет записей. Как я могу преодолеть этот глюк? Обычно пользователь ставит самую раннюю дату первой, но это не означает, что описанный выше сценарий невозможен