我在使用带内存代理的静态数据时遇到了类似我添加的错误。 有人能告诉我我的错误或缺少部分吗?
提前致谢。
me.model is undefined
me.setProxy(me.proxy || me.model.getProxy());
我的模型定义:
Ext.define(appName + '.model.Country', { extend: 'Ext.data.Model',
fields: [
{type: 'string', name: 'abbr'},
{type: 'string', name: 'name'},
{type: 'string', name: 'slogan'}
]
});
这是我的商店定义:
// The data for all states
var data = {
states : [
{'abbr':'AL','name':'Alabama','slogan':'The Heart of Dixie'},
{'abbr':'AK','name':'Alaska','slogan':'The Land of the Midnight Sun'}
]
};
Ext.define(appName + '.store.Countries', {
extend : 'Ext.data.Store',
model : appName + '.model.Country',
data : data,
proxy: {
type: 'memory',
reader: {
type: 'json',
root: 'states'
}
}
});
答案 0 :(得分:1)
您可能想要检查模型文件是否实际已加载并可供使用。处理大量文件时,ExtJS(我在使用4.2.1时遇到过这种情况)在订购时遇到问题。
快速解决方法是在应用程序定义中使用要求::
Ext.application({
name: 'APP',
appFolder: 'application',
controllers: [
...
],
requires: ['APP.model.examples', 'APP.model.other' ...],
...
});
如果这有帮助,我在这里写了更多关于PHP解决方案的内容:
答案 1 :(得分:0)
您是否尝试显式创建商店并在容器的配置中指定它?
例如:
var store = Ext.create(appName + '.store.Countries');
Ext.create('Your Component', {
...
store: store,
...
});