当前位置: 首页 > news >正文

做国外有那些网站百度指数上多少就算热词

做国外有那些网站,百度指数上多少就算热词,网站建设对接视频,020网站建设和维护费用window.onerror 全局监听所有JS错误,包括异步错误但是它是JS级别的,识别不了Vue组件信息,Vue内部的错误还是用Vue来监听捕捉一些Vue监听不到的错误 errorCaptured生命周期 监听所有下级组件的错误返回false会阻止向上传播到window.onerror …
  • window.onerror

    • 全局监听所有JS错误,包括异步错误
    • 但是它是JS级别的,识别不了Vue组件信息,Vue内部的错误还是用Vue来监听
    • 捕捉一些Vue监听不到的错误
  • errorCaptured生命周期

    • 监听所有下级组件的错误
    • 返回false会阻止向上传播到window.onerror
  • errorHandler配置

    • Vue全局错误监听,所有组件错误都会汇总到这里
    • errorCaptured返回false,不会传播到这里
    • window.onerrorerrorHandler互斥,window.onerror不会在被触发,这里都是全局错误监听了
  • 异步错误

    • 异步回调里的错误,errorHandler监听不到
    • 需要使用window.onerror
  • 总结

    • 实际工作中,三者结合使用
    • promisepromise没有被catch的报错,使用onunhandledrejection监听)和setTimeout异步,vue里面监听不了
    window.addEventListener("unhandledrejection", event => {// 捕获 Promise 没有 catch 的错误console.info('unhandledrejection----', event)
    })
    Promise.reject('错误信息')
    // .catch(e => console.info(e)) // catch 住了,就不会被 unhandledrejection 捕获
    
    • errorCaptured监听一些重要的、有风险组件的错误
    • window.onerrorerrorCaptured候补全局监听
// main.js
const app = createApp(App)// 所有组件错误都会汇总到这里
// window.onerror和errorHandler互斥,window.onerror不会在被触发,这里都是全局错误监听了
// 阻止向window.onerror传播
app.config.errorHandler = (error, vm, info) => {console.info('errorHandler----', error, vm, info)
}
// 在app.vue最上层中监控全局组件
export default {mounted() {/*** msg:错误的信息* source:哪个文件* line:行* column:列* error:错误的对象*/// 可以监听一切js的报错, try...catch 捕获的 error ,无法被 window.onerror 监听到window.onerror = function (msg, source, line, column, error) {console.info('window.onerror----', msg, source, line, column, error)}// 用addEventListener跟window.onerror效果一样,参数不一样// window.addEventListener('error', event => {//   console.info('window error', event)// })},errorCaptured: (errInfo, vm, info) => {console.info('errorCaptured----', errInfo, vm, info)// 返回false会阻止向上传播到window.onerror// 返回false会阻止传播到errorHandler// return false},
}
// ErrorDemo.vue
export default {name: 'ErrorDemo',data() {return {num: 100}},methods: {clickHandler() {try {this.num() // 报错} catch (ex) {console.error('catch.....', ex)// try...catch 捕获的 error ,无法被 window.onerror 监听到}this.num() // 报错}},mounted() {// 被errorCaptured捕获// throw new Error('mounted 报错')// 异步报错,errorHandler、errorCaptured监听不到,vue对异步报错监听不了,需要使用window.onerror来做// setTimeout(() => {//     throw new Error('setTimeout 报错')// }, 1000)},
}

要统一监听 Vue 组件的报错,可以使用 Vue 的全局错误处理机制。Vue 提供了 errorHandler 钩子函数,可以在组件发生错误时捕获并处理错误信息。

在你的 Vue 应用的入口文件(通常是 main.js)中,可以使用 Vue.config.errorHandler 方法来设置全局的错误处理函数,如下所示:

Vue.config.errorHandler = function (err, vm, info) {// 在这里可以处理错误,比如发送错误日志等console.error('Vue Error:', err);console.error('Component:', vm);console.error('Error Info:', info);
}

在这个错误处理函数中,err 参数表示捕获到的错误对象,vm 参数表示发生错误的 Vue 组件实例,info 参数包含有关错误的更多信息,比如错误发生的位置等。

通过设置全局的错误处理函数,你可以在组件发生错误时捕获错误并进行统一处理,比如发送错误日志给服务器、展示错误提示等。

需要注意的是,在开发环境下,Vue 会默认将错误打印到浏览器的控制台中,但在生产环境下,默认不会输出错误信息,因此建议在生产环境下设置一个错误处理函数来捕获和处理错误。

另外,如果你使用的是 Vue 3,全局错误处理的设置方式略有不同。你可以使用 app.config.errorHandler 方法来设置全局的错误处理函数,具体的代码示例可以参考 Vue 3 的官方文档。

http://www.yidumall.com/news/28648.html

相关文章:

  • 品牌网站建站目的关键词优化排名怎么做
  • 网站主机查询关键词优化哪个好
  • 网站后台管理系统 模板什么是网络推广员
  • 专业做轴承的网站搜索优化的培训免费咨询
  • 软件开发详细设计文档百度seo收费
  • 投诉网站怎么做宁波百度快照优化排名
  • 网站建设方案报价网站seo基础优化
  • 通讯设备 技术支持 东莞网站建设google play 安卓下载
  • 做电商到底如何赚钱aso优化软件
  • 重庆网站建设首选承越黄冈网站推广软件免费下载
  • 学校网站建设教程搜索引擎优化的主要特征
  • 商业网站怎么做阿里指数数据分析平台官网
  • 网站推广指标包括南宁seo外包平台
  • 做情书直接点网站seo引擎优化平台培训
  • 深圳网站建设科技有限公司制作网站的软件有哪些
  • 做盗版电影网站违法吗今天发生的重大新闻
  • 网站建设福建百度大数据预测平台
  • seo是什么时候开始的seo分析
  • 企业站用什么程序做网站qq推广软件
  • 阜蒙县建设镇网站网络营销策划名词解释
  • 怎么样做淘宝联盟网站图片搜索
  • 258做网站靠谱么企业网站推广
  • 自己电脑怎么做网站服务器吗申请自己的网站
  • 怎样免费建微网站建立网站平台需要多少钱
  • 今年的公需课在哪个网站做深圳关键词优化
  • dedecms微电影网站模板拓客软件排行榜
  • 怎样查看网站关键词网络销售怎么样
  • 电器网站建设目的百度网盘pc网页版入口
  • 郑州网站怎么推广小型项目外包网站
  • 做网站seo的公司哪家好百度广告大全