這裏我們再次使用Ext JS。Ext JS 4的文件上傳和內部服務器錯誤
假設我有一個文件上傳(Ext.form.field.File)字段,它將圖像提交給應用的Web服務器。
每當我在表單的提交中發現內部服務器錯誤(狀態碼= 500)(即:發佈的文件大於Web服務器的最大請求長度)時,Ext將在瀏覽器的控制檯上顯示一個異常。
我能及時捕捉到錯誤,如果我重寫Ext.Error.handle這樣的:
<!-- language: js -->
Ext.Error.handle = function (err) {
switch (err.sourceClass) {
case "Ext.JSON":
{
var arr = err.msg.split('\n');
var msg = arr[0];
arr.shift();
var serverMsg = arr.join('\n');
LogManager.error(msg);
return true;
}
default:
{
if (err.msg) {
LogManager.error(err.msg);
return true;
}
}
return false;
}
}
問題是,無論我捕獲錯誤或不模態進度條分機創建顯示遺體,這意味着我的應用程序鎖定好。
問題是:如何使Ext觸發窗體的失敗回調並以愉快的方式關閉進度欄?
只需使用靜態方法創建一個ExtJS類,並在'form.submit({})'調用中重用它。對於商店同步錯誤,最好是傾聽代理錯誤。 – 2013-11-18 12:39:10