Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual Studio Javascript断点未被命中,为什么?_Javascript_Asp.net_Visual Studio_Breakpoints - Fatal编程技术网

Visual Studio Javascript断点未被命中,为什么?

Visual Studio Javascript断点未被命中,为什么?,javascript,asp.net,visual-studio,breakpoints,Javascript,Asp.net,Visual Studio,Breakpoints,可以为javascript的代码块设置断点,如下面的屏幕截图所示。 我们如何使用它们?VS总是忽略 如果在调试时将Internet Explorer设置为浏览器,理论上Visual Studio可以在客户端脚本设置的断点处停止。要使用该功能,您需要确保在IE Internet选项的“高级”选项卡中选中“禁用脚本调试” 然而,我发现VS脚本调试有点不稳定;断点并不总是命中,尤其是VS2010或更早版本。我个人的经验是,它在VS2012或更高版本中效果最好 这就是说,如果使用VS作为客户端脚本调试器

可以为javascript的代码块设置断点,如下面的屏幕截图所示。 我们如何使用它们?VS总是忽略


如果在调试时将Internet Explorer设置为浏览器,理论上Visual Studio可以在客户端脚本设置的断点处停止。要使用该功能,您需要确保在IE Internet选项的“高级”选项卡中选中“禁用脚本调试”

然而,我发现VS脚本调试有点不稳定;断点并不总是命中,尤其是VS2010或更早版本。我个人的经验是,它在VS2012或更高版本中效果最好

这就是说,如果使用VS作为客户端脚本调试器,并且发现客户端断点未被命中,则最好在要中断的行之前插入一行“debugger;”,以确保VS脚本调试器拾取该行

pennstatephil在上面发布了一个链接,确实提供了有关该主题的更多信息:


编辑:我不能添加注释,但对于sb9关于为什么要使用IE的评论,我发现在回发之前调查脚本行为和回发之后立即调查服务器端行为时,在Visual Studio中进行调试要方便得多。此外,有时VS/IE组合会捕获Chrome和Firefox/Firebug报告的错误,并显示一条无意义的错误消息。

调试器无法在断点停止的另一种情况是使用绑定。 要调试JavaScript文件,我们需要删除绑定


我希望这会对某人有所帮助。

发生这种情况的原因似乎有无限的可能性。经过几个小时的搜索,我刚刚解决了这个问题

我的特别问题是,在我的同事启用绑定()后,我的断点立即被禁用。我不得不进入我们的BundleConfig.cs文件,注释掉上面的行:

BundleTable.EnableOptimizations = true;

在我这么做之后,他们被击中了。您希望将该行重新添加到部署中。

是的,您可以将断点放在Visual studio的客户端页面上

首先将调试器放入java脚本代码中,并在浏览器中运行该页面

调试器

之后,在浏览器中打开页面并查看inspect元素,您将看到以下视图


Visual Studio 2017
中,有一个选项可以
启用/禁用脚本调试

只要启用它,您就可以开始了


使用浏览器开发人员工具,在其中设置断点。这就是我一直在做的。我只是想知道我是否错过了一些有价值的东西。我发现即使在VS 2013中,它也有点脆弱;它并不总是在断点处停止。如果没有,则重新启动调试会话通常有效。但是,我的断点在jQuery.ready事件上,可能是时间问题使VS无法在代码执行之前设置断点。@HolisticDeveloper,是的,现在我只是直接在代码中显式插入“debugger;”。JavaScript断点最近或多或少停止生效。。。也许是最近的更新包?不确定…我在工具->调试->即时调试中取消了设置,这对我很有效。我只是浪费了近30分钟,这就是原因。这是迄今为止唯一的答案,对我帮助很大。非常感谢。