Мне нужно подобрать Ext JS для проекта, над которым я работаю, и тут возникла простая проблема, которую я не могу понять:
Вот мой код:
var arrayData = [
['Jay Gar','MD'],
['Aaron Baker','CA'],
['Susan Smith','NY'],
['Mary Stein','KT'],
['John Zalupic','WA'],
];
var store = Ext.create('Ext.data.ArrayStore',{
data: arrayData,
fields: ['personName', 'state']
});
var grid = Ext.create('Ext.grid.Panel', {
title: 'first grid',
renderTo: Ext.getBody(),
authoHeight:true,
width: 250,
store: store,
autoScroll: true,
columns: [
{ header: 'name', dataIndex: 'personName' },
{ header: 'st', dataIndex: 'state', sortable: false }
]
});
grid.getSelectionModel().on('selectionchange', function(sm, selectedRecord){
var newData = [
['Poka Boka', 'VK'],
['Choko Mok', 'CA']
];
store.removeAll();
store.add(newData);
});
Таким образом, в основном я заполняю сетку значениями по умолчанию, и при каждом щелчке по одному из них данные в хранилище заменяются новыми данными, что, в свою очередь, должно вызывать повторную визуализацию панели сетки. Это работает, но с одной постоянной проблемой:
Когда я нажимаю на любой элемент, значения newData мигают под данными, которые он собирается заменить, и по какой-то причине он отображает 3 строки: первую, вторую, а затем снова первую. Кроме того, я получаю сообщение об ошибке «Uncaught TypeError: Невозможно прочитать свойство« internalId »undefined», возникающее в этой строке: store.add (newData).
Есть идеи, что может быть причиной? Я использую Ext JS 4.
Спасибо!
Luka