Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控


Posted in Javascript onMay 13, 2019

Vue.js 从诞生至今已经 5 年,尤大在今年 2 月份发布了重大更新,即Vue 2.6。更新包括新增 scoped slot 语法、性能提升、动态指令参数等等。其中我们最关注的是错误处理。

异步错误处理

Vue 的内置错误处理机制(组件内 errorCaptured hook 和全局 errorHandler hook)现在也会捕获 v-on 处理程序内部的错误。此外,如果任意一个生命周期 hook 或事件处理程序执行了异步操作,现在可以从函数中返回一个 Promise,Promise 链中任何一个未被捕获的错误都会被发送给错误处理程序。如果使用了 async/await,则会变得更加容易,因为异步函数隐式返回 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();
 }
};

根据官方介绍,错误处理的改进包括两个方面:

捕获 v-on 处理程序内部的错误异步 Promise 错误

Fundebug作为最专业的 BUG(错误)监控服务平台,已经服务数千家企业,数万名开发者。据统计,所有的前端项目中,有22.5%使用 Vue.js 开发。之前有使用 Vue.js 框架开发的客户反馈有 bug 监控不到。此次 Vue.js 更新,我们对JavaScript 的监控插件做了相应的更新,来更好地支持使用 Vue.js 框架开发的应用错误的监控。

错误监控测试(TodoMVC)

1. 通过 v-on 定义事件

我们使用经典的 todoMVC 项目来进行测试。

首先接入 Fundebug 监控插件,在 Fundebug 官网创建一个 Vue.js 监控项目。

Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控

接下来根据接入代码,安装 Fundebug JavaScript 和 Vue 插件:

通过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需要免费注册帐号并且创建项目。

然后,我们对右下角的Clear Completed按钮对应的代码进行更改,通过v-on来定义点击事件,然后对应的deleteCompleted函数故意将todos写成todo

<button class="clear-completed" v-show="completed" v-on:click="deleteCompleted">
 Clear Completed
</button>
 deleteCompleted() {
 this.todos = this.todo.filter(todo => !todo.completed);
 }

点击Clear Completed触发报错:

Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控

Fundebug 成功捕获该错误:

Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控

2. 异步 Promise 错误

通过axios发送一个 GET 请求获取数据,然后将返回数据处理。假定不小心将data写成了date,那么data.length会触发错误。

deleteCompleted() {
 return axios
 .get("https://jsonplaceholder.typicode.com/todos/")
 .then(response => {
  let data = response.date;
  let len = data.length;
 });
}

程序运行后,Fundebug 成功捕获该错误:

Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控

总结

Vue.js 更新到 2.6.10,对错误处理提供了更加强大的支持。Fundebug 的 JavaScript 监控插件支持 Vue.js 项目中v-on和异步错误的监控。

以上所述是小编给大家介绍的Vue.js@2.6.10更新内置错误处理机制Fundebug同步支持相应错误监控,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
打豆豆小游戏 用javascript编写的[打豆豆]小游戏
Jan 08 Javascript
有关于JS辅助函数inherit()的问题
Apr 07 Javascript
Js中获取frames中的元素示例代码
Jul 30 Javascript
简单常用的幻灯片播放实现代码
Sep 25 Javascript
js验证电话号码与手机支持+86的正则表达式
Jan 23 Javascript
jQuery的cookie插件实现保存用户登陆信息
Apr 15 Javascript
基于jquery实现图片放大功能
May 07 Javascript
解析JavaScript数组方法reduce
Dec 12 Javascript
layui获取选中行数据的实例讲解
Aug 19 Javascript
基于vue.js中关于下拉框的值默认及绑定问题
Aug 22 Javascript
谈谈node.js中的模块系统
Sep 01 Javascript
vuecli项目构建SSR服务端渲染的实现
Oct 30 Javascript
详解async/await 异步应用的常用场景
May 13 #Javascript
轻松解决JavaScript定时器越走越快的问题
May 13 #Javascript
JavaScript Math对象和调试程序的方法分析
May 13 #Javascript
jsonp跨域获取百度联想词的方法分析
May 13 #Javascript
基于Fixed定位的框选功能的实现代码
May 13 #Javascript
JQuery事件委托原理与用法实例分析
May 13 #jQuery
使用原生js编写一个简单的框选功能方法
May 13 #Javascript
You might like
php语言流程控制中的主动与被动
2012/11/05 PHP
PHP包含文件函数include、include_once、require、require_once区别总结
2014/04/05 PHP
Linux下安装PHP MSSQL扩展教程
2014/10/24 PHP
PHP未登录自动跳转到登录页面
2016/12/21 PHP
php获取微信共享收货地址的方法
2017/12/21 PHP
PHP模版引擎原理、定义与用法实例
2019/03/29 PHP
JS实现随机数生成算法示例代码
2013/08/08 Javascript
jQuery Migrate 1.1.0 Released 注意事项
2014/06/14 Javascript
jQuery表格列宽可拖拽改变且兼容firfox
2014/09/03 Javascript
Bootstrap媒体对象的实现
2016/05/01 Javascript
Bootstrap学习笔记之css样式设计(1)
2016/06/07 Javascript
javascript实现文字无缝滚动
2016/12/27 Javascript
详解用Node.js实现Restful风格webservice
2017/09/29 Javascript
VueJS 组件参数名命名与组件属性转化问题
2018/12/03 Javascript
PM2自动部署代码步骤流程总结
2018/12/10 Javascript
jQuery实现的点击显示隐藏下拉菜单功能完整示例
2019/05/17 jQuery
深入理解 TypeScript Reflect Metadata
2019/12/12 Javascript
Element Notification通知的实现示例
2020/07/27 Javascript
Python基于回溯法子集树模板解决数字组合问题实例
2017/09/02 Python
关于Python中的向量相加和numpy中的向量相加效率对比
2019/08/26 Python
python上下文管理器异常问题解决方法
2021/02/07 Python
基于PyTorch中view的用法说明
2021/03/03 Python
Bailey帽子官方商店:Bailey Hats
2018/09/25 全球购物
求职自荐信格式
2013/12/04 职场文书
旅游项目开发策划书
2014/01/18 职场文书
关于安全演讲稿
2014/05/09 职场文书
校园游戏活动新闻稿
2014/10/15 职场文书
2014年科室工作总结范文
2014/12/19 职场文书
大三学生英语考试作弊检讨书
2015/01/01 职场文书
房产公证书样本
2015/01/23 职场文书
工作检讨书大全
2015/01/26 职场文书
法定代表人免职证明
2015/06/24 职场文书
2016大学生党校学习心得体会
2016/01/06 职场文书
观看《杨善洲》宣传教育片心得体会
2016/01/23 职场文书
导游词之杭州岳王庙
2019/11/13 职场文书
mysql5.7的安装及Navicate长久免费使用的实现过程
2021/11/17 MySQL