【发布时间】:2016-08-09 15:13:30
【问题描述】:
我正在使用 sencha extjs 4.1.3,我的问题是:- 我的应用程序中有一个模型和一个商店,但我有两个 url,我需要从中获取数据,这两个 url 都有相同格式的数据如何加载具有两个不同 url 的单个商店?请提出如何实现这些目标。
【问题讨论】:
标签: extjs
我正在使用 sencha extjs 4.1.3,我的问题是:- 我的应用程序中有一个模型和一个商店,但我有两个 url,我需要从中获取数据,这两个 url 都有相同格式的数据如何加载具有两个不同 url 的单个商店?请提出如何实现这些目标。
【问题讨论】:
标签: extjs
如果您想从两个不同的 url 填充存储,但一次只能使用一个,您可以随时在加载调用中覆盖代理 url:
store.load({
url:'theOtherUrl'
});
示例:https://fiddle.sencha.com/#fiddle/1ej9
如果您希望来自两个 url 的数据在同一个 store 中,您可以创建两个 store,将其内容复制到第三个 store(这允许您同时运行两个服务器调用),或者您可以调用第一个 url,成功后,您使用 addRecords 选项调用第二个 url:
store.load({
url:'theFirstUrl',
success:function() {
store.load({
url:'theSecondUrl',
addRecords:true
});
}
});
【讨论】:
如果您希望来自两个 URL 的数据在同一个存储中,您可以做的是在成功函数中将数据加载到存储中:
var store = Ext.getStore("store name")
store.loadRawData(data,true)
再次从第二个 URL 加载数据时使用上面给出的相同代码。将数据加载到 store 时不要忘记使用“true”。true 将记录添加到存储中的现有记录中,false 先删除旧记录。
【讨论】: