sha*_*unc 5 javascript ajax extjs xmlhttprequest extjs4
我有一个http API(令人震惊的新技术)对设置不同响应状态的不同错误做出反应.
问题是 - 当使用Ext.data.Store和一些XMLHttpRequest-inside代理时,处理这种状态的最佳方法是什么?据我所知,"load"事件不会直接传递状态,也不会传递"异常",最后一个事件实际上甚至不会在收到4**状态时触发.
所以,我可以从代码XHR实例看到的是从Ext.data.store隐藏的,所以这个问题也可以表述为"什么是最好的ExtJS的做法来处理低级别XHR对象".
Ext.data.Store上没有异常事件.而是Ext.data.proxy.Server及其定义异常事件的子类(如Ext.data.proxy.Ajax).监听器接收包含http状态的响应对象.
根据您的设置,您可以在商店的代理上注册一个监听器,或者 - 如果您的商店使用模型 - 在模型的代理上注册.
这个测试设置适用于Chrome 14和FF 6:
var store = Ext.create('Ext.data.Store', {
fields: [ 'field1', 'field2'],
proxy: {
type: 'ajax',
url: 'api/data.json',
reader: {
type: 'json',
root: 'data'
},
listeners: {
exception: function(proxy, exception, operation) {
console.log(response.status);
}
}
},
});
store.load();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3810 次 |
| 最近记录: |