extjs4 - массовая вставка в хранилище приводит к снижению производительности - PullRequest
1 голос
/ 26 ноября 2011

Копирование строк из сетки и вставка в ту же сетку в начале (вставка в позиции 0).

Это вызывало проблемы с производительностью, как только достигает более 10 строк.Я начал использовать

store.suspendEvents(true); foreach(..) { r = ... store.insert(0, r); } store.resumeEvents();

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

К вашему сведению.его добавление второй строки в последнюю снова, где он выдает с сообщением об исключении.

Любые другие предложения о том, как справиться с этой ситуацией любым другим способом, приветствуются.

1 Ответ

0 голосов
/ 02 декабря 2011

Вы должны создать магазин, а затем использовать сетку в этом магазине.Затем вы можете управлять магазином по мере необходимости, и данные будут автоматически доступны для сетки.Что-то вроде:

var the_store = Ext.create('My.store.Foo', { 
    extend: 'Ext.data.Store',
    fields: ['id','name'],
    ...
    proxy: {
        ...
    }
});

var the_grid = Ext.create('My.view.Grid', {
    extend: 'Ext.grid.Panel',
    ...
    store: the_store,
    ...
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...