CSHTML中的javascript断点?

Alv*_*par 14 javascript asp.net-mvc breakpoints visual-studio-2015

我有一个带有javascript标记的.CSHTML文件.在这个脚本标签中,我有几行javascript.第一行的javascript引用了@ViewBag中的一个属性.所有其他javascript行都是普通脚本,没有任何MVC相关引用.

观察:我可以在每个javascript线上放置断点(visual studio 2015).但是,所有断点都在断点符号的中心有一个白点(红色圆圈)除了带有@ViewBag引用的行(此特定行在中心没有白点).

似乎只有没有白点的断点在运行期间被击中.

问题:有人可以解释这里发生了什么吗?白点是什么意思?为什么普通的红色断点线是唯一一条击中断点的线?

Rio*_*ams 12

Visual Studio调试器实际上希望您调试文件中的实际服务器端代码.cshtml,而不是其中的客户端Javascript.

IIRC,Visual Studio允许您在Internet Explorer(可能还有Edge)中按预期调试Javascript代码,但对于其他浏览器,您可能希望在浏览器中使用第三方工具或开发人员工具(F12).

一个简单的方法是利用Javascript的debugger关键字,您可以将其置于代码中并在开发者工具打开的情况下运行(只需按F12然后刷新页面).它将触及一个断点,浏览器将允许您按预期执行代码:

function doWork(){
    // Ensure that this line is hit with the Developer Tools open in your 
    // browser
    debugger;
    // Do work here
}
Run Code Online (Sandbox Code Playgroud)