Перезагрузите хранилище и заполните сетку, не перерисовывая окно.

У меня есть сетка, и когда я нажимаю на строку и нажимаю кнопку удаления. эта запись будет удалена с сервера, а сетка будет обновлена. (Если есть 10 записей и если мы удалим 1, то будет 9 записей.)

Это работает в первый раз, когда мы пытаемся удалить элемент из сетки. После удаления записи и обновления сетки. Window, содержащий сетку, отображается под экраном. Мне нужно избавиться от этого.

Как перезагрузить store без перерисовки окна.

Мой код;

var ras = Ext.getStore('RemoveARowStore');

ras.on('load', function() {
       var grid = Ext.ComponentQuery.query('#window1 > #form1 > #grid1')[0];
    grid.getStore.load();
       grid.getView().refresh();

}, this, { single: true });
ras.load();

person sharon Hwk    schedule 01.08.2012    source источник


Ответы (1)


Если вы обновляете магазин, сетка должна автоматически обновлять сетку.

Следовательно, вам не нужно делать grid.getView.refresh(), что будет вашей оскорбительной линией.

Кроме того, в текущем фрагменте фактически наблюдать за событием load и предпринимать какие-либо действия по нему бессмысленно. (Сетка все равно обновится)

person Alex    schedule 01.08.2012
comment
И без того рисует под экраном пустое окно. - person sharon Hwk; 01.08.2012
comment
Я думаю, что весь обработчик load должен быть удален - person sha; 01.08.2012
comment
Это grid.getStore.load(); ? Если я уберу его, то сетка не обновится. - person sharon Hwk; 02.08.2012
comment
Вся функция ras.on('load' избыточна. Вам не нужно ничего делать с вашей сеткой, чтобы отображать данные из вашего магазина, вам нужно только загрузить свой магазин (что вы делаете здесь: ras.load();) - person Alex; 02.08.2012
comment
Хорошо, я избавился от него. Но все же окно рисуется внизу. :( - person sharon Hwk; 02.08.2012
comment
Это что-то другое, а не этот код. Данные никогда не будут * возиться с вашими макетами, как это. - person Alex; 02.08.2012
comment
Любая идея, почему это происходит? - person sharon Hwk; 02.08.2012
comment
images.wikia.com/demigods/images/4/4a /Гремлины2-1-.jpg ? А если серьезно, это не то, что можно спасти от текущего вопроса. Опубликуйте новый, с вашим видом + окном в нем. - person Alex; 02.08.2012