Visual Studio 2017 中的 Javascript 断点

新手上路,请多包涵

我刚刚安装了 Visual Studio 2017。启动 ASP.NET MVC 应用程序后,我收到一条消息,指出 Visual Studio 中的 chrome 调试已启用。

但是我在 Visual Studio 中的断点不会命中。 Razor 代码上的断点似乎有效,但 Javascript 无效。断点没有像它们应该的那样完全变红。重启,重建似乎没有任何效果。

我有以下代码示例

@Html.Partial("_Test", Model.Test) // debugging works here

<script>
    var i = 1;
    console.log(i); // debugging does not work here or above
</script>

@section scripts {
    <script>
        var a = 11;
        console.log(a); // debugging does not work here or above
    </script>
}

我没有打开 chrome 调试控制台,我在 Visual Studio 中选中了已启用的选项(“启用 Javascript 调试..”)。

根据这篇博文,我认为这应该有效: https ://blogs.msdn.microsoft.com/webdev/2016/11/21/client-side-debugging-of-asp-net-projects-in-google-chrome /

我在这里错过了什么吗?难道这在 Visual Studio 2017 中不起作用?

我只有一个扩展,那就是 Resharper,但我想这不是问题。

原文由 ronaldm 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 355
2 个回答

此功能不适用于 *.cshtml 文件中的 javascript 代码,但仅适用于单独的 *.js(或 *.ts)文件中的代码。

在此处输入图像描述 注意 JavaScript 文件中的断点是如何激活的,而 Razor 视图中的断点不是。

我还注意到,当在当前 Chrome 会话中首次加载页面时,在页面加载期间执行 JavaScript 代码时,JavaScript 文件不会命中断点。断点仅在文档完成加载一次后才起作用。

原文由 NineBerry 发布,翻译遵循 CC BY-SA 3.0 许可协议

另一个提示:在运行/调试时设置“开始 URL”后,只能启用 js 调试。

只有这样 VS 才会附加到浏览器进程。

原文由 Lw Cui 发布,翻译遵循 CC BY-SA 3.0 许可协议

推荐问题