【发布时间】:2017-03-11 15:54:02
【问题描述】:
在使用 Webpack 捆绑我的应用程序之前,我使用 IIFE 创建模块,然后将它们附加到 window 对象上,以便我可以访问它们。这使得在 chrome 浏览器中的调试非常简单,因为这些模块都是全局可用的,我可以用断点检查它们。
我最近过渡到使用 Webpack 来捆绑我的应用程序,这非常棒。但是,现在当我设置断点并想要检查导入的模块时,我无法通过引用模块名称来做到这一点。我很确定这是因为在后台,Webpack 将模块重命名为其他名称。
这是一个特定文件中的导入语句示例(顺便说一句,每个导入的模块都在导入一个对象):
在同一个文件中,当我设置断点时,我希望能够像以前那样检查模块的内容。在下图中,我正在尝试访问 CustomHelpers 模块,它只是存储在对象中的帮助函数的集合。
有什么想法可以在 Chrome 控制台中调试时引用这些导入的模块吗?
澄清一下,我的webpack.config.js 正在工作并且我启用了源映射,这就是为什么我看到的是原始文件而不是乱码的 bundle.js 文件。具体来说,我只是想检查我导入的模块并查看它们的内容。
【问题讨论】:
-
您使用的是压缩包吗?我知道如果生成的脚本被缩小,源地图上的 Chrome 断点就不能很好地工作。即使他们不是,但它也会受到打击。通常最好将“调试器”语句放在源代码中,因为它们具有完全相同的效果!
标签: javascript google-chrome debugging webpack es6-modules