Sencha touch 错误存储加载
晚上好 我的应用程序的初始视图需要从存储中获取一些数据(autoLoad=true)来更改它的某些组件。我什么时候可以这样做 视图: 商店:Sencha touch 错误存储加载,sencha-touch,extjs,store,sencha-touch-2,Sencha Touch,Extjs,Store,Sencha Touch 2,晚上好 我的应用程序的初始视图需要从存储中获取一些数据(autoLoad=true)来更改它的某些组件。我什么时候可以这样做 视图: 商店: Ext.define('App.store.Empresa', { extend: 'Ext.data.Store', requires: [ 'App.model.Empresa' ], config: { autoLoad: true, autoSync: true,
Ext.define('App.store.Empresa', {
extend: 'Ext.data.Store',
requires: [
'App.model.Empresa'
],
config: {
autoLoad: true,
autoSync: true,
model: 'App.model.Empresa',
storeId: 'EmpresaStore',
proxy: {
type: 'ajax',
url: 'http://URL',
reader: {
type: 'json',
rootProperty: 'empresa'
}
}
}
});
控制器:
Ext.define('App.controller.Empresa', {
extend: 'Ext.app.Controller',
config: {
refs: {
empresaPanel: 'empresapanel'
},
control: {
"empresapanel": {
initialize: 'onContainerInitialize'
}
}
},
onContainerInitialize: function(component, options) {
var store = Ext.getStore("EmpresaStore"),
record = store.findRecord("id", "1");
console.log(store);
console.log(record);
}
});
第一次出现在console.log中:Ext.apply.create.Class
第二行:null
如果我在这个视图中放置一个按钮并点击相同的事件,我运行的代码与函数“onContainerInitialize”中的代码相同,那么记录就完成了
在创建视图之后,是否有特定的时间可以从存储访问数据
谢谢大家! 您应该为添加侦听器以从存储访问记录。 这里有一个例子,你可以这样做。将以下代码放入onContainerInitialize中:
store.on('load', function(t) {
var record = t.findRecord("id", "1");
console.log(record);
}, this, {single: true});
如果您询问如何检测存储数据何时已加载,只需收听存储中的“加载”事件。。。
store.on('load', function(t) {
var record = t.findRecord("id", "1");
console.log(record);
}, this, {single: true});