当我的网格通过 AJAX 代理加载时,我使用响应的“消息”键传递异常错误消息或成功加载的可选信息消息。例如:
{
results: 100,
success: true,
rows: [ { ...data here... } ],
message: "Query took 2.2 milliseconds"
}
我在使用 ExtJS 4.x 和 5.0 时问了一个类似的问题,我能够使用 Proxy 的afterRequest
事件来查看响应、提取消息并显示它。
但是这在 5.1 中被删除了,我似乎无法在 6.0 中找到一个等价物。我也从有一个非常相似的问题的人那里找到了这个答案,但是扩展 Ext.data.proxy.Ajax 的公认答案在 6.0 中对我不起作用——它放弃了调用“this.callParent(arguments)”。
我已经为此工作了好几个小时,在代理、阅读器、存储和网格配置上戳和刺激,并搜索谷歌。像往常一样,6.0 的文档在涉及事件时毫无用处。
我能找到在 AJAX 加载成功时触发的唯一事件是商店的“加载”事件。不幸的是,至少据我所知,商店无法访问代理处理的 JSON 响应。代码:
var ResultsDataStore = Ext.create("Ext.data.Store", {
listeners: {
load: function() { console.log("storeload"); }
},
proxy: ...
我怎么能:
(1) 从 Store 的 load 事件中访问 Response,或者
(2) 侦听可以访问响应中传递的消息的其他事件?