javascript - Webpack 全局 JS 错误处理程序和 "Script error"

标签 javascript webpack error-handling single-page-application

我有一个使用 Webpack 构建的 react 项目。有一个错误(很可能是缺少 JS 功能,但这只是一个猜测),它只会在“fetch as Google”中显示出来,无论他们在这个工具中使用什么浏览器/JS 引擎。

显然,除了 window.onerror 之外,我没有控制台或其他方法来获取错误。或 window.addEventListener('error') .我尝试将这些处理程序(我假设它们是可互换的)都添加为外部 <script>在主捆绑包上方或直接在 index.js 内部作为第一次导入。

这些处理程序捕获一个错误,但错误消息是非常通用的“脚本错误”,其他参数(例如行号)为 0。我用谷歌搜索了这个,每个解决方案都表明当第 3 方脚本加载时会发生这样的错误/o CORS,但问题是我的页面上没有 3rd 方脚本,只有 webpack 包。我想这与 webpack 分离模块的方式有某种关系......当我在导入处理程序的主组件内触发错误时,错误消息会正确显示。

我不知道是哪个模块导致了这个错误,所以我无法正确附加处理程序(我读到这很可能是由新的 ESnext 功能引起的,所以我尝试添加一些垫片,再次在包内或作为上面的外部脚本主捆绑包,但这没有帮助)。

有没有办法绕过“脚本错误”并获得实际的错误消息?也许还有另一种全局 JS 错误处理的方法,或者一些特定于 webpack 的 hack?

最佳答案

好的,所以不是调试问题的真正答案,但如果有人在“Fetch as Google”/“Page speedInsights”JS 渲染引擎中遇到未知 JS 错误的问题 - 请尝试使用用户代理建议的 Chrome 版本(在我的情况是Chrome/41.0.2272.118)。

当我下载适当版本的 Chromium 并打开我的网站时,我收到了一个 JS 错误,这是一个 webpack/jQuery 加载程序冲突。删除 jQuery 依赖项为 Google 修复了该站点。

关于javascript - Webpack 全局 JS 错误处理程序和 "Script error",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49233968/

相关文章:

javascript - 如何使用CSS去饱和div的背景图像?

javascript - JS-两个数组的和,数组的长度可以不相等

javascript - React/Webpack本 map 片找不到

reactjs - 具有 PostCSS/CSS 模块的全局实用程序类

php - 用PHP处理文件夹的问题

node.js - Node JS检测命名管道是否存在

javascript - 如何用react js实现切换效果?

javascript - Marionette Controller 最佳实践

webpack - 无法导入 vuejs 库

javascript - 在 Javascript 中将抛出的错误写入文件