当在Chrome中调试时,Browserify源映射没有加载

7
我正在开发一个Angular应用程序,但在调试指令的链接函数时,我遇到了Chrome关于源映射的问题。
在页面的第一次加载(由Gulp和BrowserSync触发)时,一切都很好:我可以看到browserified文件以及地图中的单个源文件。控制台上有一个错误,所以我点击调用跟踪以查看它,正确的代码行将显示在源文件内 - 正如预期的那样。
但是,在我的代码中设置断点并重新加载浏览器进行调试后,问题开始出现。执行在断点处停止 - 好的 - 但显然还没有加载任何源文件。相反,之前的源文件变成了友好绿色字母的文本,并告诉我:
请稍等片刻。在加载源映射时不会显示已编译的脚本!
这是正确的。我可以在“资源”选项卡中看到它确实没有加载,但没有其他进展(可能是由于断点)。
我以前从未遇到过这种行为。我认为这不是由于我的Browserify源映射引起的问题,而是怀疑它是Chrome的问题。
Firefox中一切正常。但是我更喜欢使用Chrome而不是Firefox,所以...
你们中有没有人遇到过这个问题或者有任何想法是什么原因导致的?
我使用的Chrome版本是41.0.2272.118(在提出这个问题时是当前版本)。

你检查了文件夹的权限吗? - Alex Baulch
你是指包含源文件的文件夹吗?它们都是drwxr-xr-x,但我怀疑这不是权限问题,因为除非我设置断点,否则源代码会被正确加载。 - Serg Derbst
我收到了相同的消息,这阻止了我完全看到断点。我的店里其他开发人员没有这个问题。我正在使用工厂创建本地服务,我有一种直觉认为这就是问题所在。代码如下:module.exports = function(app) { app.factory('finder-logic', ["$q", "services", function($q, srv) {有什么想法吗? - pdschuller
因为某种奇怪的原因,现在似乎可以工作了。我猜测可能是由于Chrome版本的某种错误(它正在自动更新)导致了这种情况。我不认为使用工厂会导致这种情况。我非常确定这是一个Chrome的问题。你能找出问题所在吗? - Serg Derbst
我和你一样,我的browser-sync angular typescript应用程序也遇到了同样的问题。我还没有找到任何解决方案。你解决了吗? - Nguyen Tran
唯一的解决方案是等待几秒钟,然后它会自动带您回到源。 - TAHA SULTAN TEMURI
2个回答

0
根据我的经验,在服务器端设置断点似乎阻止了Chrome执行所需的操作,从而导致其停滞不前:
编译后的脚本在加载源映射时不会显示。
结束调试会话/允许调试继续可以解决源代码的问题。

0
我在Chrome开发工具中禁用了JavaScript源代码映射,并成功进行了调试。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接