Как сохранить выбор Vaadin ComboBox при настройке DataProvider? - PullRequest
0 голосов
/ 18 января 2019

Vaadin 12.0.3

У меня есть вспомогательный метод, который возвращает ListDataProvider для Дней месяца. Когда пользователь меняет месяц, я вспоминаю вспомогательный метод и сбрасываю DataProvider, чтобы отразить новый дневной диапазон.

    filterDay.setDataProvider(IndexViewHelper.getCalendarDaysDataProvider(year, month));

Проблема в том, что установка DataProvider на ComboBox удаляет выбранный в данный момент параметр. Чтобы предотвратить это, мне нужно сделать что-то вроде этого:

var currentValue = filterDay.getValue();
filterDay.setDataProvider(IndexViewHelper.getCalendarDaysDataProvider(year, month));
if(currentValue exists in the new list) filterDay.setValue(currentValue);

Есть ли лучший способ сделать это? По сути, я хотел бы надеяться, что setDataProvider() не сбросит выбранный в данный момент параметр, если этот параметр существует в новом списке.

Я знаю, что это может быть очень сложно, особенно с результатами подкачки. Я просто хотел спросить об этом на форуме, если есть более эффективные способы решения этой проблемы.

...