Я довольно новичок в ExtJS, поэтому мне было интересно, какой подход лучше всего отображать различные виды информации с использованием одной сетки. Это то, о чем я думаю. У меня есть три разных хранилища данных, каждый из которых использует прокси-сервер и возвращает JSON. Назовем их STORE1, STORE2 и STORE3. Я использую разные магазины, потому что у каждого из них есть разные параметры, которые выполняются для получения с сервера. Теперь я хочу включить три кнопки, каждая из которых запускает магазин, который будет использоваться для заполнения Grid. Как точно указать новое хранилище для Grid для использования после его создания? Я не вижу setStore() в объекте Grid, поэтому я не уверен, как решить проблему. Если бы кто-то мог дать мне некоторое представление, это было бы высоко оценено.ExtJS: загрузка нескольких магазинов с использованием одной сетки
ответ
Существует несколько способов решить эту проблему.
Первое, что я хотел бы сделать, это действительно продумать ваш прецедент. Вы уверены, что так вы хотите обрабатывать свой пользовательский интерфейс? Имеет ли смысл фильтр данных (по умолчанию или по взаимодействию с пользователем). Вот несколько примеров этого. Один из них, который приходит на ум, - простой виджет задачи (не так просто). http://docs.sencha.com/ext-js/4-1/#!/example/simple-tasks/index.html - верхняя правая кнопка фильтрует хранилище на основе выбора пользователя. Он использует одну сетку + один магазин, но фильтрует данные на основе выбора пользователя.
Если вы настроены на загрузку данных из разных магазинов, вы можете использовать один магазин для управления представлением и другими магазинами для извлечения данных. При загрузке хранилищ, которые извлекают данные, вы используете метод loadData (или loadRecords) для обновления хранилища, контролирующего представление. Имеет смысл? Остерегайтесь здесь угловых дел. Что произойдет, если вы дважды загрузите одни и те же данные? Если вы используете опцию «добавить» в методе loadData?
удачи.
Сетка имеет способ bindStore
. Если вам также нужно назначить другой набор столбцов - отметьте reconfigure
метод
Да, это также хороший способ пойти. +1 Еще одна мысль состоит в том, чтобы использовать макет карты и показывать ту же сетку, которая связана с 3 различными магазинами. Это приведет к более быстрому переключению между тремя состояниями, а затем повторной выборке данных и повторной настройке представления. – dbrin
- 1. ExtJS ожидает загрузки нескольких магазинов
- 2. Загрузка нескольких файлов с использованием одной формы
- 3. Динамическое создание нескольких магазинов Sencha ExtJS из одного магазина
- 4. Загрузка хранилища сетки EXTJS - добавление параметров?
- 5. Фильтр сетки Extjs с использованием store.filter
- 6. Разработка нескольких магазинов
- 7. Extjs: данные рендеринга при загрузке магазинов
- 8. extJs 5 - группировка нескольких уровней сетки
- 9. Загрузка нескольких изображений с использованием одной и той же кнопки
- 10. Поле сетки сетки Extjs выберите все проблемы
- 11. EXTJS: Редактор сетки - вставка одной строки с разными атрибутами
- 12. Как фильтровать по нескольким столбцам с использованием ExtJS сетки фильтра
- 13. Загрузка нескольких фреймов с помощью одной кнопки?
- 14. Редактирование ячейки сетки ExtJS
- 15. метод ExtJS 4 Getter для контроллера магазинов
- 16. ExtJS 4.2.1 сброс магазинов в ViewChange
- 17. ExtJS: Как разместить панели сетки
- 18. Панель сетки Extjs с флажками
- 19. Как отображать данные JSON с использованием сетки в Extjs
- 20. Как дождаться загрузки всех магазинов в ExtJs?
- 21. ExtJS загружает несколько магазинов из одного сервлета
- 22. Загрузка сетки с DirectXTK
- 23. ExtJS бесконечный стиль сетки
- 24. Форматирование столбца сетки ExtJS
- 25. Несколько магазинов данных с использованием pubnub?
- 26. Extjs ComboBox внутри сетки
- 27. ExtJS данные сетки SelectionChange
- 28. Модель выбора сетки ExtJS
- 29. EXTJS Неполадка строк сетки
- 30. Экран сетки EXTJS
Спасибо за ваши отзывы. Этот пример заставил меня думать о новых вещах сейчас. Мне очень нравится эта идея. Когда вы говорили о фильтрации, предлагали ли вы загружать ВСЕ данные и затем отфильтровывать их? Я спрашиваю, потому что у нас много данных, и если я не разобьюсь, я чувствую, что это окажет огромное влияние на производительность. Это то, что делается часто? Хотя, я не уверен, действительно ли мой образ мышления. –
это зависит от вас, как это сделать. Я думаю, что все борются с данными. мой предпочтительный метод - это страница данных - так что вы получаете только 50 записей за раз. затем позвольте пользователям сортировать (удаленный сортировать), фильтровать его - либо через плагины фильтров, либо с помощью специальных методов фильтрации (например, в примере) и, наконец, искать его. другие любят бесконечную прокрутку (через буферизованное хранилище). В любом случае, какова точка разбрызгивания записей 5K на странице? Никто не может поглотить его каким-либо значимым образом. – dbrin
Touché. Спасибо за помощь. –