vue3:生命周期(onErrorCaptured)
创始人
2024-05-29 06:25:28
0

一、背景

当项目如果发生报错,影响程序体验。如果能以捕获的方式得到错误信息,而且还能定位问题,这样就好了,本文介绍onErrorCaptured实现我们想要的效果。

vue2:errorCaptured。使用与vue3同理。

vue3:onErrorCaptured。本文介绍vue3的使用。

二、简介

组合式 API:生命周期钩子-onErrorCaptured | Vue.js

错误可以从以下几个来源捕获:

1、事件处理器;2、生命周期钩子;3、setup()函数;4、侦听器;5、自定义指令钩子;6、过渡钩子;

这个钩子有三个实参:错误对象、触发该错误的组件实例,以及一个说明错误来源类型的信息字符串。

如果组件的继承链或组件链上存在多个 errorCaptured 钩子,对于同一个错误,这些钩子会被按从底至上的顺序一一调用。这个过程被称为“向上传递”,类似于原生 DOM 事件的冒泡机制。

如果组件的继承链或组件链上存在多个 errorCaptured 钩子,对于同一个错误,这些钩子会被按从底至上的顺序一一调用。这个过程被称为“向上传递”,类似于原生 DOM 事件的冒泡机制。

如果 errorCaptured 钩子本身抛出了一个错误,那么这个错误和原来捕获到的错误都将被发送到 app.config.errorHandler

errorCaptured 钩子可以通过返回 false 来阻止错误继续向上传递。即表示“这个错误已经被处理了,应当被忽略”,它将阻止其他的 errorCaptured 钩子或 app.config.errorHandler 因这个错误而被调用。

你可以在 errorCaptured() 中更改组件状态来为用户显示一个错误状态。注意不要让错误状态再次渲染导致本次错误的内容,否则组件会陷入无限循环。

这个钩子可以通过返回 false 来阻止错误继续向上传递。请看下方的传递细节介绍。

错误传递规则

 默认情况下,所有的错误都会被发送到应用级的 app.config.errorHandler (前提是这个函数已经定义),这样这些错误都能在一个统一的地方报告给分析服务。

如果组件的继承链或组件链上存在多个 errorCaptured 钩子,对于同一个错误,这些钩子会被按从底至上的顺序一一调用。这个过程被称为“向上传递”,类似于原生 DOM 事件的冒泡机制。

如果 errorCaptured 钩子本身抛出了一个错误,那么这个错误和原来捕获到的错误都将被发送到 app.config.errorHandler

errorCaptured 钩子可以通过返回 false 来阻止错误继续向上传递。即表示“这个错误已经被处理了,应当被忽略”,它将阻止其他的 errorCaptured 钩子或 app.config.errorHandler 因这个错误而被调用。

三、未使用onErrorCaptured

views/onErrorCaptured/index.vue



浏览器报错 

四、使用onErrorCaptured

src/app.vue

放在app.vue里边项目里的报错都能够捕获。

views/onErrorCaptured/index.vue



浏览器打印

五、更多用途待后续发掘。 

六、欢迎交流指正,关注我,一起学习

参考链接:

【vue3】11.跟着官网学习vue3-生命周期钩子,onErrorCaptured错误捕获钩子的使用_onunmounted_我有一棵树的博客-CSDN博客

Vue 错误处理 — onErrorCaptured 钩子_lio_zero的博客-CSDN博客

相关内容

热门资讯

国家发展改革委组织召开深化投贷... 新华财经北京2月28日电 据国家发展改革委28日消息,为落实党中央、国务院决策部署,加强投资政策与金...
中国进出口银行天津分行原行长王... 来源:@经济观察报微博正风肃纪 经济观察网讯 2月28日,中央纪委国家监委网站通报,据中央纪委国家监...
绿色金融助力经济绿色转型 绿色... 随着全球对可持续发展和环境保护的重视日益加深,绿色金融已成为推动经济社会绿色转型的重要力量。近日,国...
朋友借贷起纠纷 法庭释法明责促... 近日,四平市铁东区人民法院石岭人民法庭审结一起因朋友间借贷引发的民事纠纷案。原告张某诉称,2015年...
铁东法院雷霆出击 破解十年欠款... 近日,四平市铁东区人民法院法官凭借坚定决心与高效执行力,成功化解一起长达近10年的民间借贷纠纷执行案...
全国人大代表张临山:推动解决尘... 来源:@华夏时报微博 #全国人大代表呼吁关注尘肺病农民#...
机构:1—2月TOP100房企... 北京商报讯(记者 王寅浩 李晗)2月28日,中指研究院发布报告显示,2025年1—2月,TOP100...
东方创业:2月28日召开董事会... 每经AI快讯,东方创业(SH 600278,收盘价:6.55元)2月28日晚间发布公告称,公司第九届...
掌阅科技:公司严格按照相关法律... 证券之星消息,掌阅科技(603533)02月28日在投资者关系平台上答复投资者关心的问题。投资者:请...
中新网评:平凡之光点亮不凡征程... 来源:中国新闻网 中新网北京2月28日电(房家梁)从身边的暖心故事到网络热点映射的正能量意义,从星辰...
二月二龙抬头:新时代文明实践站... 转自:草原云老人在新时代文明实践所理发。“二月二,龙抬头,剃龙头,一年都有精神头……”农历二月初二素...
北京市:3月3日起人工耳蜗集采... 城镇职工参保人员使用中选人工耳蜗,个人先行负担20%的费用,其余80%的费用纳入医保报销;城乡居民参...
​南京林业大学:开启求职新“夜... 中国教育报-中国教育新闻网讯(记者 阿妮尔 通讯员 杨潇)2月26日晚7点,南京林业大学“人才夜市”...
瑞安房地产:预计年2024年净... 来源:@经济观察报微博业绩快报 2月28日,瑞安房地产有限公司(股票代码:00272.HK,以下简称...
转需!年度个税汇算手机APP操... 转自:法治网 【转需!#年度个税汇算手机APP操作指南#】#2024综合所得个税汇算明起办理#...
三美股份:董事、常务副总经理占... 格隆汇2月28日丨三美股份(603379.SH)公布,自本公告披露之日起15个交易日后的3个月内,董...
危机时刻显担当,常州前黄船闸助... 转自:扬子晚报现场情况扬子晚报网2月28日讯(通讯员 庞君 记者 马奔)记者28日从常州市船闸管理中...
网易云音乐,道歉了! 2月28日18时左右,网易云音乐发布致歉声明:初步核实,因机房网络故障,今日17:25左右开始,网易...
168亿电池材料基地开建,“化... 一座总面积相当于170座标准足球场的电池材料产业园,于2月24日在山东海阳市正式开工,透露出万华化学...
房东感慨房子靠自己难出租调研称... 转自:天津广播 【#房东感慨房子靠自己难出租##调研称8...