我正在从一个Web服务中获取一些特定的数据,并且需要将这些数据传输到另一个Web服务的extraParams
中。我该如何实现呢?
我创建了一个singleton
类,它处理信息,并在获取这些数据之后;另一个存储器X1 M2 N1 X将使用这些数据。
这是单例类;
Ext.define('MyApp.MyInfo', {
requires: [] ,
singleton: true,
getMyId: function () {
var me = this;
var request = Ext.Ajax.request({
url: myUrl() + '/info', //Here is web-service url
success: function(response, opts) {
var obj = Ext.decode(response.responseText);
var myId = obj.data[0].id; // Successfully gets required ID
console.log(myId); // Successfully prints ID value
// callback(userGid); //Not sure if callback method will handle ID value to fetch on any other class..
},
failure: function(response, opts) {
console.log('server-side failure with status code ' + response.status);
}
});
}
});
这里是另一个proxy
,它需要上面Ajax.request
中的myId
值;
stores: {
myFooStore: {
model: 'MyApp.Model',
autoLoad: true,
session: true,
proxy: {
url: myUrl() + '/the/other/service',
type: 'ajax',
extraParams: {
id: // HERE! I need to get myId value on here. And couldn't get it.
},
reader: {
type: 'json',
rootProperty: 'data'
}
}
},
1条答案
按热度按时间wn9m85ua1#
您需要调用
store.load()
方法来加载特定的存储,而不是store
自动加载。您可以使用store.getProxy()
传递参数,如下例所示:在这个小提琴,我已经创建了一个演示的基础上,您的要求。
程式码片段: