iphone快速跳轉返回時出現Network Error


環境:iphone 微信公眾號

多頁之間跳轉(非spa),統一處理ajax請求的錯誤,並將錯誤toast形式彈出,老是出現network error。但並不影響頁面使用。

原因

iphone保持頁面,但是頁面切換較快,有未返回的接口,會直接扔出錯誤:network error,如果統一處理錯誤,會彈出此錯誤。

解決

在統一處理錯誤彈窗通知時判斷if(error.status === 0) return。若是axios,則if (message.request && message.request.status === 0) return

調試

應為在iphone中無法console看到效果,簡單調試方式是將內容顯示在網頁中,

xxx.catch(e => {
  // 此處是抓取的錯誤信息,但是無法調試
  errorObj = getErrorInfo(e)
  document.querySelector('.error-content').innerHTML = JSON.stringify(errorObj , null, 4) 
  //讓錯誤顯示在.error-content元素中
})
function getErrorInfo(obj) {
	let a = {}
	for (let key in obj) {
		a[key] = typeof obj[key] === 'object' ? getErrorInfo(obj[key]) : obj[key]
	}
	return a
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM