У меня очень простой интерфейс, содержащий сетку, поле поиска, кнопку поиска и хранилище данных из источника данных JSON.
Состояние сетки по умолчанию показывает все данные для данного пользователя, ввод термина в поле поиска и нажатие кнопки поиска применяет фильтр, который затем повторно выполняет вызов, чтобы получить новый набор результатов JSON и поместить эти данные в сетке. Я делаю так следующим образом:
quick_search: function(search_term, store) {
store.clearFilter(true);
store.filter([{property: 'filter', value: search_term}]);
}
Следующая функция прекрасно работает при нажатии кнопки поиска, но я вижу этот сценарий:
- Пользователь начинает с 100 записей в сетке
- Пользователь искал "test" (имеет 25 записей)
- Соответствующие 25 записей отображаются в сетке
- Затем пользователь ищет «стек» (45 результатов)
- Сетка быстро показывает исходные 100 записей на мгновение, а затем показывает правильные 45 записей
И когда этот последний шаг происходит, это очень быстрый всплеск.
Это правильный шаблон для обновления данных сетки на лету в режиме поиска? Возможно, я неправильно очищаю фильтр?