1
我正在寫一個Angular 1.5.3應用程序。在我的主'主頁'頁面控制器上,我使用$ http調用2個不同的端點。這兩個端點彼此不相關,並且具有單獨的數據等。我遇到的一個問題是,如果這兩個端點都有錯誤,那麼我的用戶將看到2個錯誤消息。信息可能相同也可能不相同(例如,有時沒有互聯網連接)。AngualrJS - 如何管理多個http錯誤消息的可用性?
FirstService.request()
.then(handleFSSuccess)
.catch(handleError);
SecondService.request()
.then(handleSSSuccess)
.catch(handleError)
function handleError(error) {
ErrorService.showErrorBanner(error);
}
我不能使用$ q.all功能或承諾鏈接,因爲即使第一承諾失敗我想第二個繼續。
我不知道如何管理運行所有承諾,無論他們是否全部失敗,只顯示一個錯誤橫幅。如果我只顯示一個錯誤橫幅,則其他錯誤消息可能不會顯示(防止顯示多個錯誤橫幅)。
如果只顯示一個,則可用性會更好。
使用像'hasErrorShown'自定義布爾標誌,並只有'showErrorBanner'如果該標誌設置爲false。 –
在您的showErrorBanner()函數中,您可以首先檢查橫幅是否顯示/存在,然後處理它,但不要實例化兩個橫幅,只創建一個並顯示/隱藏它,或者檢查是否存在,標誌或檢查DOM – Ferus7