我有一个 http API(令人震惊的新技术)对设置不同响应状态的不同错误使用react。
问题是——在将 Ext.data.Store 与一些 XMLHttpRequest 内部代理一起使用时,处理这种状态的最佳方法是什么?据我了解,“加载”事件不会直接传递状态,“异常”也是如此,最后一个实际上在收到 4** 状态时甚至不会触发。
因此,正如我从代码中看到的那样,xhr 实例隐藏在 Ext.data.store 中,因此问题也可以表述为“处理低级 xhr 对象的最佳 extjs 实践是什么”。
最佳答案
Ext.data.Store 上没有异常 事件。相反,是 Ext.data.proxy.Server 及其子类(如 Ext.data.proxy.Ajax)定义了 exception event。 .监听器收到一个包含 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();
关于javascript - 从 Ext.data.Store 访问 http 状态码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7496879/