main.js
window.onerror = function (message, url, line, column, error) {
console.log('message: ', message)
console.log('url: ', url)
console.log('line: ', line)
console.log('column: ', column)
console.log('error: ', error)
}
Vue.config.errorHandler = function (err, vm, info) {
console.log(err)
console.log(vm)
console.log(info)
}
在组件 methods 方法中故意设置错误
methods: {
// 点击热门问题发送
sendQuestion (item, index) {
console.log(a)
}
结果只有 Vue.config.errorHandler 执行了,window.onerror 里面的函数没有执行,而 errorHandler 又捕获不到资源加载错误。
使用了
Vue.config.errorHandler
之后报错就会被catch
的,所以不会继续外抛,window.onerror
也就捕获不到了。