我尝试扩展Connection类,就像Ext.Ajax做的那样,我可以设置一个中心点来设置一些默认值。
Ext.define( 'App.helper.HttpApi', {
extend : 'Ext.data.Connection',
singleton: true,
request: function( oConf ) {
oConf.url = '/index.php';
oConf.params.vers = '1.1.json';
oConf.params...
this.callParent( oConf );
}
} );
我得到:“Uncaught Ext.Error:没有指定URL” 但正如你所看到的那样,网址是指定的...不知何故,它会在Ext代码的深度中丢失。
答案 0 :(得分:1)
setOptions
Ext.data.Connection
方法会引发您获得的错误
因此您需要在调用Ext.data.Connection
的构造函数时提供url,以便所有其他方法都可以使用该URL
Ext.define( 'App.helper.HttpApi', {
extend : 'Ext.data.Connection',
singleton: true,
constructor : function (config)
{
config = config || {};
Ext.applyIf(config, {
url : '/index.php'
});
this.callParent(config);
},
request: function( oConf ) {
oConf.params.vers = '1.1.json';
oConf.params...
this.callParent( oConf );
}
});
或者如果您要对所有请求使用单个URL,则可以直接将其指定为此单例的默认值
Ext.define( 'App.helper.HttpApi', {
extend : 'Ext.data.Connection',
singleton: true,
url : '/index.php',
request: function( oConf ) {
oConf.params.vers = '1.1.json';
oConf.params...
this.callParent( oConf );
}
});