商店添加 - 不起作用

时间:2016-08-17 06:36:17

标签: javascript extjs

我有一个简单的网格,看起来像这样:

{
    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有关。它没有做它应该做的事情。

1 个答案:

答案 0 :(得分:2)

只需删除grid.store.load()

load将商店标记为需要加载,但如果您使用add添加的记录不是您需要的。

工作示例:https://fiddle.sencha.com/#fiddle/1fbv