我正在尝试在创建新的Ext.data.Record时处理Ext.data.Store实例中的异常.当服务器使用以下json响应时:
{"success": false,"message": "some text"}
我得到“请求”类型的异常,即使服务器返回HTTP 200响应!
({ "success": false,"message": "some text","data": { "PositionId": "00000000-0000-0000-0000-000000000000","Name": "123" } })
……但我不想要这个.有没有办法改变这种行为?
此外,当我在商店中插入记录时,它会自动添加到关联的网格中,但如果发生错误,它仍然存在,所以我需要在每个错误上重新加载存储.有没有更好的方法来做到这一点?
解决方法
您应该捕获两个Store事件中的一个:
> loadexception(已弃用)
>例外
例如,您可以:
// make the store var myStore = new Ext.data.Store({...}); // catch loading exceptions myStore.on('exception',function( store,records,options ){ // do something about the record exception },this); // load store myStore.load();
您还可以使用商店中的成功和失败事件,根据成功标志执行操作.