我有一个简单的网格,看起来像这样:
{
xtype: "grid",
columns: [{
header: 'Title', flex: 1, dataIndex: 'Title'
}],
store: Ext.create('Ext.data.Store', {
fields:['id', 'Title']
})
}
我有一个函数(附加到一个按钮),我相信,它应该用一些数据填充这个网格。它是这样的:
grid.store.removeAll();
records = [{"id":"1", "Title", "Hello world"}];
grid.store.add(records);
grid.store.load();
console.log(grid.store.getCount());
但是由于一些疯狂的原因,商店是空的,grid.store.getCount()
回应" 0"。到底他妈发生了什么? PS。我使用ExtJS 6。
修改
但是,如果我稍微改变我的代码:
...
store: Ext.create('Ext.data.Store', {
autoLoad: false,
fields:['id','Title'],
data:[{"id": 1,"Title": "Hello world"}]
})
...
//and in function just one line of code:
grid.store.load();
然后它开始工作。所以,整个问题似乎与store.add
有关。它没有做它应该做的事情。
答案 0 :(得分:2)
只需删除grid.store.load()
。
load
将商店标记为需要加载,但如果您使用add
添加的记录不是您需要的。