如何使用MemoryProxy将数据加载到商店中
问题描述:
我想使用MemoryProxy加载JSON存储(我需要使用代理,因为我根据场景使用不同的源代码)。这有点类似于:如何使用MemoryProxy将数据加载到商店中
var data = Ext.decode(gridArrayData);
var proxy = new Ext.data.MemoryProxy(data);
var store = new Ext.data.GroupingStore({
proxy: proxy
});
store.load();
然而,当我检查这个我可以看到,该代理具有10行数据,而不是存储。我失去了为什么。
任何指针?
答
,所以我错过了Arrayreader 我修改附带ExtJS的有以下
var nameRecord = Ext.data.Record.create([
{name: 'company'},
{name: 'price', type: 'float'},
{name: 'change', type: 'float'},
{name: 'pctChange', type: 'float'},
{name: 'lastChange', type: 'date', dateFormat: 'n/j h:ia'}
]);
var arrayReader = new Ext.data.ArrayReader({}, nameRecord);
var memoryProxy = new Ext.data.MemoryProxy(myData);
var storeDos = new Ext.data.Store({
reader : arrayReader,
autoLoad: true,
proxy : memoryProxy
});
我想将工作拷贝某处github上的更换arrayStore,因为我无法找到任何东西arrray例子有工作
+0
工作的Github副本会很酷 – Meredith 2013-12-31 01:07:21
答
在所有的示例内存代理他们错过了把
autoLoad: true,
答
这是我简单的商店。 All in one的,并准备加载对象的数组马上;-)
Ext.define('MemoryStore', {
extend: 'Ext.data.Store',
requires: [
'Ext.data.proxy.Memory'
],
fields: [{name: 'company'}],
proxy: {
type: 'memory'
}
});
创建商店后,您可以通过loadData
var store = Ext.create("MemoryStore");
store.loadData([
{company:"Skynet"},
{company:"Rocket-Solutions"},
]);
console.debug(store.first().get("name"));
什么ExtJS的版本加载JSON是这样的? – Meredith 2013-12-31 01:07:52