Sencha touch Sencha Touch:如何读取商店中的某些记录?
我有一个具有3级数据深度的应用程序:Sencha touch Sencha Touch:如何读取商店中的某些记录?,sencha-touch,extjs,store,Sencha Touch,Extjs,Store,我有一个具有3级数据深度的应用程序: 发言清单 演示细节 演示幻灯片 现在,当用户来到应用程序时,他看到了从JSONP商店加载的列表。他单击一个项目,回调函数接收记录。它将其推送到新视图中,即详图并显示它。用户可以从此处公开演示幻灯片-再次从详细信息传递数据记录 问题是当用户刷新页面或来自URL时。如果他访问url,如/presentations/slides/1,他希望看到演示id为1的幻灯片。问题是,只要他不在列表中,数据就不会加载,因为数据没有加载,所以不会传递给细节,细节也不会传递给
- 发言清单
- 演示细节
- 演示幻灯片
this.store.find(1)
,但我找不到任何方法来实现这一点
如何根据存储的record.data.id
从存储中加载内容
要添加更多内容,store.load()
似乎是异步工作的,因此当我这样做时:
store.load();
store.each(function(rec){console.log(rec);});
它不适用于JSONP存储,因为数据尚未加载。但是,当我使用Chrome Debugger并暂停执行以加载数据时,它可以工作:(你是正确的,加载是异步的,所以你所要做的就是使用存储的回调函数。你可以在这里找到一个例子是的,问题是:如何延迟运行操作?我正在调度过程中,如果我使用回调,它将在代码中进一步失败,这里假设它有记录。但我仍然无法要从存储区接收一条记录,请执行以下操作:(您可以根据回调函数中的记录移动所有代码,也可以在加载存储时设置侦听器,然后在知道存储已加载的情况下将代码添加到其中。然后从存储中加载一个确切的项?在回调或加载事件激发的函数上,可以使用var rec=store.findRecord('id',idofrecyuwant)