摘要:摘要的錯(cuò)誤監(jiān)控插件同步支持異步錯(cuò)誤監(jiān)控。此次更新,我們對(duì)的監(jiān)控插件做了相應(yīng)的更新,來(lái)更好地支持使用框架開(kāi)發(fā)的應(yīng)用錯(cuò)誤的監(jiān)控。程序運(yùn)行后,成功捕獲該錯(cuò)誤總結(jié)更新到,對(duì)錯(cuò)誤處理提供了更加強(qiáng)大的支持。
摘要: Fundebug 的 JavaScript 錯(cuò)誤監(jiān)控插件同步支持 Vue.js 異步錯(cuò)誤監(jiān)控。
Vue.js 從誕生至今已經(jīng) 5 年,尤大在今年 2 月份發(fā)布了重大更新,即Vue 2.6。更新包括新增 scoped slot 語(yǔ)法、性能提升、動(dòng)態(tài)指令參數(shù)等等。其中我們最關(guān)注的是錯(cuò)誤處理。
異步錯(cuò)誤處理Vue 的內(nèi)置錯(cuò)誤處理機(jī)制(組件內(nèi) errorCaptured hook 和全局 errorHandler hook)現(xiàn)在也會(huì)捕獲 v-on 處理程序內(nèi)部的錯(cuò)誤。此外,如果任意一個(gè)生命周期 hook 或事件處理程序執(zhí)行了異步操作,現(xiàn)在可以從函數(shù)中返回一個(gè) Promise,Promise 鏈中任何一個(gè)未被捕獲的錯(cuò)誤都會(huì)被發(fā)送給錯(cuò)誤處理程序。如果使用了 async/await,則會(huì)變得更加容易,因?yàn)楫惒胶瘮?shù)隱式返回 Promise:
export default { async mounted() { // if an async error is thrown here, it now will get // caught by errorCaptured and Vue.config.errorHandler this.posts = await api.getPosts(); } };
根據(jù)官方介紹,錯(cuò)誤處理的改進(jìn)包括兩個(gè)方面:
捕獲 v-on 處理程序內(nèi)部的錯(cuò)誤
異步 Promise 錯(cuò)誤
Fundebug作為最專業(yè)的 BUG(錯(cuò)誤)監(jiān)控服務(wù)平臺(tái),已經(jīng)服務(wù)數(shù)千家企業(yè),數(shù)萬(wàn)名開(kāi)發(fā)者。據(jù)統(tǒng)計(jì),所有的前端項(xiàng)目中,有22.5%使用 Vue.js 開(kāi)發(fā)。之前有使用 Vue.js 框架開(kāi)發(fā)的客戶反饋有 bug 監(jiān)控不到。此次 Vue.js 更新,我們對(duì)JavaScript 的監(jiān)控插件做了相應(yīng)的更新,來(lái)更好地支持使用 Vue.js 框架開(kāi)發(fā)的應(yīng)用錯(cuò)誤的監(jiān)控。
錯(cuò)誤監(jiān)控測(cè)試(TodoMVC)我們使用經(jīng)典的 todoMVC 項(xiàng)目來(lái)進(jìn)行測(cè)試。
首先接入 Fundebug 監(jiān)控插件,在 Fundebug 官網(wǎng)創(chuàng)建一個(gè) Vue.js 監(jiān)控項(xiàng)目。
接下來(lái)根據(jù)接入代碼,安裝 Fundebug JavaScript 和 Vue 插件:
通過(guò)npm安裝fundebug-javascript與fundebug-vue
npm install fundebug-javascript fundebug-vue --save
配置apikey
import * as fundebug from "fundebug-javascript"; import fundebugVue from "fundebug-vue"; fundebug.apikey = "API-KEY"; fundebugVue(fundebug, Vue);
其中,獲取apikey需要免費(fèi)注冊(cè)帳號(hào)并且創(chuàng)建項(xiàng)目。
然后,我們對(duì)右下角的Clear Completed按鈕對(duì)應(yīng)的代碼進(jìn)行更改,通過(guò)v-on來(lái)定義點(diǎn)擊事件,然后對(duì)應(yīng)的deleteCompleted函數(shù)故意將todos寫(xiě)成todo。
deleteCompleted() { this.todos = this.todo.filter(todo => !todo.completed); }
點(diǎn)擊Clear Completed觸發(fā)報(bào)錯(cuò):
Fundebug 成功捕獲該錯(cuò)誤:
2. 異步 Promise 錯(cuò)誤通過(guò)axios發(fā)送一個(gè) GET 請(qǐng)求獲取數(shù)據(jù),然后將返回?cái)?shù)據(jù)處理。假定不小心將data寫(xiě)成了date,那么data.length會(huì)觸發(fā)錯(cuò)誤。
deleteCompleted() { return axios .get("https://jsonplaceholder.typicode.com/todos/") .then(response => { let data = response.date; let len = data.length; }); }
程序運(yùn)行后,F(xiàn)undebug 成功捕獲該錯(cuò)誤:
總結(jié)Vue.js 更新到 2.6.10,對(duì)錯(cuò)誤處理提供了更加強(qiáng)大的支持。Fundebug 的 JavaScript 監(jiān)控插件支持 Vue.js 項(xiàng)目中v-on和異步錯(cuò)誤的監(jiān)控。
關(guān)于FundebugFundebug專注于JavaScript、微信小程序、微信小游戲、支付寶小程序、React Native、Node.js和Java線上應(yīng)用實(shí)時(shí)BUG監(jiān)控。 自從2016年雙十一正式上線,F(xiàn)undebug累計(jì)處理了10億+錯(cuò)誤事件,付費(fèi)客戶有Google、360、金山軟件、百姓網(wǎng)等眾多品牌企業(yè)。歡迎大家免費(fèi)試用!
版權(quán)聲明轉(zhuǎn)載時(shí)請(qǐng)注明作者Fundebug以及本文地址:https://blog.fundebug.com/2019/05/13/fundebug-support-vue-2-6-10/
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/109471.html
摘要:前端異常監(jiān)控插件更新至,修復(fù)了個(gè)小修復(fù)用戶行為中重復(fù)記錄請(qǐng)求的修復(fù)的為報(bào)錯(cuò)的這個(gè)都不會(huì)影響功能,不過(guò)為了避免造成困擾,請(qǐng)大家及時(shí)更新插件。 摘要: 修復(fù)2個(gè)BUG,請(qǐng)大家及時(shí)更新。 showImg(https://segmentfault.com/img/remote/1460000019373421?w=900&h=383); Fundebug前端異常監(jiān)控服務(wù) Fundebug是專業(yè)...
摘要:摘要新增配置選項(xiàng),支持監(jiān)控慢請(qǐng)求,同時(shí)修復(fù)了記錄的響應(yīng)時(shí)間偏小的。的前端異常監(jiān)控插件更新至,新增配置選項(xiàng),支持監(jiān)控慢請(qǐng)求,同時(shí)修復(fù)了記錄的響應(yīng)時(shí)間偏小的,請(qǐng)大家及時(shí)更新監(jiān)控慢請(qǐng)求專注于程序異常監(jiān)控,暫時(shí)無(wú)意于提供全面的性能監(jiān)控服務(wù)。 摘要: 1.9.0新增 httpTimeout 配置選項(xiàng),支持監(jiān)控 HTTP 慢請(qǐng)求,同時(shí)修復(fù)了記錄的 HTTP 響應(yīng)時(shí)間偏小的 BUG。 showImg...
摘要:摘要兼容低版本瀏覽器,請(qǐng)大家及時(shí)更新。通過(guò)優(yōu)化配置,我們兼容了一些低版本的瀏覽器可知,插件最低兼容,以及。例如,我們的錄屏功能僅支持一些高版本的瀏覽器,均不支持。 摘要: 兼容低版本Android瀏覽器,請(qǐng)大家及時(shí)更新。 showImg(https://segmentfault.com/img/remote/1460000019373421?w=900&h=383); Fundebug...
摘要:微信小程序運(yùn)維中心提供了錯(cuò)誤日志記錄,但功能還是比較有限。有時(shí)候一個(gè)微信小程序可能會(huì)用到多個(gè)第三方服務(wù),從多個(gè)域名獲取數(shù)據(jù)。要使用監(jiān)控,你需要去網(wǎng)站注冊(cè)賬號(hào)并創(chuàng)建一個(gè)微信小程序監(jiān)控項(xiàng)目,然后按照提示接入插件。 在微信小程序里,與后臺(tái)服務(wù)器交互的主要接口函數(shù)是wx.request(),用于發(fā)起 HTTPS 網(wǎng)絡(luò)請(qǐng)求。其重要性不言而喻。然而,卻經(jīng)常遇到請(qǐng)求失敗的問(wèn)題,筆者特意谷歌wx.re...
摘要:之前版本的插件只能監(jiān)控執(zhí)行錯(cuò)誤,這次,我們正式發(fā)布,它新增了對(duì)資源加載錯(cuò)誤與請(qǐng)求錯(cuò)誤的支持,努力讓前端開(kāi)發(fā)者不放過(guò)每一個(gè)。可以捕獲所有請(qǐng)求錯(cuò)誤,同時(shí)記錄用戶行為,并實(shí)時(shí)提醒開(kāi)發(fā)者,且不需要修改后端,也不需要搭建復(fù)雜的日志系統(tǒng)。 摘要:Fundebug的JavaScript監(jiān)控插件更新至0.1.0,可以監(jiān)控3種不同類型的前端BUG:JavaScript執(zhí)行錯(cuò)誤、資源加載錯(cuò)誤、HTTP請(qǐng)求...
閱讀 1531·2021-09-22 15:52
閱讀 1623·2019-08-30 15:44
閱讀 957·2019-08-30 14:24
閱讀 2762·2019-08-30 13:06
閱讀 2771·2019-08-26 13:45
閱讀 2840·2019-08-26 13:43
閱讀 1085·2019-08-26 12:01
閱讀 1579·2019-08-26 11:56