extjs - добавление записи в магазин не отражается на сетке - PullRequest
2 голосов
/ 03 мая 2011

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

var entityGrid = new Ext.grid.EditorGridPanel({

    ddGroup           : 'gridDDGroup',
    layout            : 'fit',
    store             : gridStore,
    closable          : true,
    enableDragDrop    : true,
    enableColumnMove  : false,
    enableColumnResize: true,
    columnLines       : true,
    stripeRows        : true,
    colModel          : new Ext.grid.ColumnModel({
        columns:cols
    }),
    expandable        : true,
    autoExpandColumn  : 'name',
    tbar              : gridToolBar,
    view              : new Ext.grid.GridView({  
        enableRowBody : true,
        ignoreAdd     : true,       
        deferEmptyText: false,
        emptyText     : 'No Record found.',       
        getRowClass   : function(record, rowIndex, rp, ds){}
    }), 
    id                : id,
    selModel          : new Ext.grid.RowSelectionModel({
        singleSelect  : true
    })

var store =new Ext.data.JsonStore({
    fields : [
        {
            name : 'name',
            mapping : 'name'
        }, {
            name : 'displayName',
            mapping : 'displayName'
        }
    ],
    root : masterData.
})

Ответы [ 2 ]

1 голос
/ 04 мая 2011

Я не уверен, что это что-то меняет, но этот код всегда работал для меня:

var r = new store.recordType({ field1: '1', field2: '2' }); 
r.commit();
store.add(r);
store.commitChanges();
grid.store.sort('field1', 'ASC');

Попробуйте добавить commitChanges () и обновить.

0 голосов
/ 16 марта 2012

Я не уверен, что вы все еще страдаете от этой проблемы, но я нашел код по адресу: http://www.sencha.com/forum/showthread.php?141982-commitChanges-and-rejectChanges-for-the-Store-in-ExtJS-4

очень полезным, так как все изменилось при переходе на EXTJS-4.Какую версию EXTJS вы используете?Поскольку вы используете EditorGridPanel, я предполагаю, что это ExtJS 3. Если вы хотите, я могу добавить фрагмент кода, который успешно использует вышеупомянутую архитектуру, для обновления записи в сетке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...