繁体   English   中英

当启用“仅我的代码”时,Visual Studio 2015 JavaScript调试不会捕获未处理的异常

[英]Visual Studio 2015 JavaScript debugging doesn't catch unhandled exceptions when 'Just my code' is enabled

由于整个团队已升级到Visual Studio 2015,因此调试器不再中断JavaScript中未处理的异常。 然而,4台机器中的1台工作正常,我们猜测这是因为它在IE10上,而我们其余的都在IE11上。

无论如何,要涵盖明显的东西:

  • 所有设备之间的所有设置都相同,包括Visual Studio 2015安装目录中JavaScript> JustMyCode文件夹中的mycode.default.wwa.json

  • 新“异常设置”窗口中的默认设置与2012年旧模式窗口中的“异常”设置相匹配

因此,为了重现这个问题,我们只需在外部JS文件中编写任何旧的狡猾代码(注意页面本身的脚本块被正确捕获):

ViewModel.js:

function something() {
   foo();
}
something();

启用JustMyCode时,调试器不会将foo()作为未处理的异常捕获。 一旦JustMyCode被禁用,异常将被捕获。 所以是的,我们可以解决这个问题,但是一旦禁用,我们就会失去实际的.Net调试。

有没有人遇到过这个问题和/或找到了解决方案? 我已经尝试将* .js添加到mycode.default.wwa.json文件中的MyCode部分,我还记录了Connect上的一个错误 ,但我不希望微软就此事快速回答。

编辑 :所以这似乎只发生在JS文件末尾有一个查询字符串,例如site.js?V = 1234。 如果删除查询字符串,则调试器将捕获异常,就像在Visual Studio 2012中一样。向Microsoft提交了一个新的repro和演示项目。

我遇到过这个,在我的情况下,它与我的项目设置中的域名有关。 解决方法是确保IE中URL的域与项目设置/ Web /启动URL中的域相同。

例如:

URL IN IE: http://www.yourproject.local

项目设置中的启动URL: http://www.yourproject.local

如果这两个域不同,则会破坏Visual Studio对JavaScript异常的处理。

编辑:我刚刚看到你对查询字符串的编辑。 所以这可能与您的问题有关。 你能确定域名不匹配吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM