摘要:上次我們聊過了前端監(jiān)控執(zhí)行錯誤和第三方資源加載異常的監(jiān)控,那么這次來聊聊如何捕獲錯誤。首先先安利下自己做的報錯監(jiān)控的項目歡迎和。使用對事件進行監(jiān)聽即可捕捉到未被的錯誤。
上次我們聊過了前端監(jiān)控 JS 執(zhí)行錯誤和第三方資源加載異常的監(jiān)控,那么這次來聊聊如何捕獲 Promise 錯誤。
首先先安利下自己做的報錯監(jiān)控的項目 FE-Monitor 歡迎 issue 和 star 。
Promise 在前端中的使用已經非常普遍了,但是許多開發(fā)者或許習慣了鏈式調用卻忘了捕獲 Promise 的錯誤了。
例如:
function forgetCatchError () { async() .then(() => { // code.. }) .then(() => console.log("forget catch error!")); }
上面的示例代碼中 async() 中和后續(xù)的兩個 then 中的代碼如果出錯或者 reject ,錯誤沒有得到處理。
在沒有使用 catch 方法指定錯誤處理的回調函數,Promise 對象拋出的錯誤不會傳遞到外層代碼,即不會有任何反應。當promise被 reject 并且錯誤信息沒有被處理的時候,會拋出 unhandledrejection,這個錯誤不會被 window.onerror 和 addEventListener("error") 所監(jiān)聽到。
使用 unhandledrejection對 unhandledrejection 事件進行監(jiān)聽即可捕捉到未被 catch 的 Promise 錯誤。
window.addEventListener("unhandledrejection", err => { console.log(err.reason) err.preventDefault(); }, false); // 或者 window.onunhandledrejection = function(err) { console.log(err.reason); return true; }
addEventListener 中調用 event 的 preventDefault() 可以讓 Promise 的錯誤不拋送到控制臺,在 onunhandledrejection 中則可以使用 return true 來達到相同的效果。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://m.hztianpu.com/yun/105725.html
摘要:摘要徒手寫錯誤監(jiān)控。為什么用定時器呢,因為在單頁應用中,路由的切換和地址欄的變化是無法被監(jiān)控的,我確實沒有想到特別好的辦法來監(jiān)控,所以用了這種方式,如果有人有更好的辦法,請給我留言,謝謝。 摘要: 徒手寫JS錯誤監(jiān)控。 作者:一步一個腳印一個坑 原文:搭建前端監(jiān)控系統(tǒng)(二)JS錯誤監(jiān)控篇 Fundebug經授權轉載,版權歸原作者所有。 背景:市面上的監(jiān)控系統(tǒng)有很多,大多收費,對于...
摘要:摘要的錯誤監(jiān)控插件同步支持異步錯誤監(jiān)控。此次更新,我們對的監(jiān)控插件做了相應的更新,來更好地支持使用框架開發(fā)的應用錯誤的監(jiān)控。程序運行后,成功捕獲該錯誤總結更新到,對錯誤處理提供了更加強大的支持。 摘要: Fundebug 的 JavaScript 錯誤監(jiān)控插件同步支持 Vue.js 異步錯誤監(jiān)控。 Vue.js 從誕生至今已經 5 年,尤大在今年 2 月份發(fā)布了重大更新,即Vue 2....
摘要:這樣很容易造成大的損失,提前做好錯誤收集和處理,可以減少損失。 編寫代碼只是做好項目的一小部分,寫代碼難免會碰到錯誤。因此,在項目上線后,我們還需要主動對項目的錯誤進行收集,不能等用戶發(fā)現(xiàn)錯誤,再聯(lián)系我們,我們再去處理。這樣很容易造成大的損失,提前做好錯誤收集和處理,可以減少損失。 本人并沒有做過相關的工作,下面的文章只是我在學習中的一點思考和總結,可能有比較多不足和錯誤的地方,希望大...
摘要:前端異常監(jiān)控如果是移除的流程,那么編程就一定是將放進去的流程。過濾掉運行時錯誤上報加載錯誤事件捕獲異常最新的規(guī)范中定義了事件用于全局捕獲對象沒有處理器時異常情況。 前端異常監(jiān)控 如果debug是移除bug的流程,那么編程就一定是將bug放進去的流程。如果沒有用戶反饋問題,那就代表我們的產品棒棒噠,對不對? 主要內容 Web規(guī)范中相關前端異常 異常按照捕獲方式分類 異常的捕獲方式 日志...
閱讀 1226·2021-11-24 09:38
閱讀 3653·2021-11-22 15:32
閱讀 3521·2019-08-30 15:54
閱讀 2632·2019-08-30 15:53
閱讀 1555·2019-08-30 15:52
閱讀 2806·2019-08-30 13:15
閱讀 1907·2019-08-29 12:21
閱讀 1474·2019-08-26 18:36