extjs4 — объединить хранилище в другое

#extjs #extjs4

#extjs #extjs4

Вопрос:

У меня есть представление данных, которое отображает хранилище данных.

Время от времени пользователь может добавлять дополнительные элементы из разных источников.

Когда это происходит, я создаю новое хранилище, просматриваю результат и добавляю их в хранилище первичного представления данных.

Есть ли лучший способ объединить два хранилища? или добавлять загруженные данные в хранилище, а не обновлять его полностью?

Ответ №1:

Проверьте loadRecords метод Ext.data.Магазин

Загружает массив экземпляров модели в хранилище, запускает событие datachanged. Обычно это должно вызываться только внутри при загрузке с прокси-сервера, при добавлении записей вручную вместо этого используйте add

Параметры

записи: Внешние данные.Модель[] Массив записей для загрузки

параметры: Объект {addRecords: true}, чтобы добавить эти записи к существующим записям, false, чтобы сначала удалить существующие записи хранилища

Комментарии:

1. Прохладный. Вы знаете, могу ли я передать свойство данных 2-го хранилища непосредственно в функцию loadRecords первого? данные представляют собой смешанную коллекцию ожиданий loadRecords и массива.

2. Я думаю, я мог бы просто использовать getRange() для коллекции, чтобы превратить ее в массив.

3. Да, похоже, getRange — это именно то, что вам нужно.