TypeScript& Visual Studio 2015断点 - 未为此文档加载任何符号

时间:2016-05-26 07:42:00

标签: debugging typescript visual-studio-2015 breakpoints

我无法在visual studio中使用断点来处理我的TypeScript文件。

当我在调试模式下运行时,断点被禁用,并且在鼠标悬停时我看到错误消息:

  

断点当前不会被击中。没有为此文档加载符号

我已经围绕这个问题进行了Google搜索,我知道其他几个有类似症状的SO问题,但我的问题与我找到的任何问题都没有重复:

  • this建议将一行从.csproj文件移到另一个位置:我自己的.csproj文件中没有这样的类似行。我尝试添加它,但行为没有区别
  • this(以及SO,GitHub及其他地方的许多其他人)认为问题在于源图没有生成。我在项目属性中设置了这个选项,源代码肯定会生成,因为如果我在Chrome中调试我可以看到它们,所以这也是一个死胡同。

我在构建输出中也看不到任何不适。

如何在Visual Studio中使用TypeScript断点?

版本信息:

  • VS2015 update 2
  • Microsoft Visual Studio版本1.8.29.0的打字稿
  • 尝试各种浏览器,包括IE11
  • 使用.Net Framework 4.5.2的ASP.NET Web应用程序

我的选项>调试>符号设置:

Symbol Settings

3 个答案:

答案 0 :(得分:12)

要做的第一件事是确保TypeScript构建生成源映射。此设置位于项目属性TypeScriptBuild设置下(见下文):

TypeScript project properties showing where the setting is to generate source maps

接下来,请确保在启动时选择支持的浏览器来调试脚本。唯一知道支持的是 I 是Internet Explorer和Edge - 需要注意。

  • Internet Explorer :调试器会在启动时自动附加到它,但首先必须在IE的高级设置中启用脚本调试。工具>>互联网选项>>高级>>取消选中“禁用脚本调试(Internet Explorer)
  • ”复选框
  • Edge :调试程序在启动时不会自动附加到它,但您可以在启动后手动附加到它(选择脚本引擎)。如果在加载页面期间执行代码中的断点,则需要刷新网页以触发断点。

通过检查浏览器进程该脚本位于Debugging列下的进程窗口(ctl-alt + z),确认调试器实际上已连接到Web浏览器。 / p>

Processes window showing the debugger attached to both IIS Express and Internet Explorer

如果在验证调试器已连接到Web浏览器后,断点仍然未绑定到.ts文件中,请打开TypeScript编译器生成的.js文件并在那里设置断点。

另一种选择是为您选择的浏览器使用内置浏览器调试器。有关详细信息,请参阅this页。

答案 1 :(得分:2)

我遇到了同样的问题。对我来说,事实上我没有在我的System.config中定义“meta”。

如果您按照本文中的“ASP.NET 5模板”部分进行操作,则应解决您的问题。

http://www.codeproject.com/Articles/1087605/Angular-typescript-configuration-and-debugging-for

祝你好运。

答案 2 :(得分:1)

我也有同样的问题,并且能够通过将源文件移动到另一个目录来修复它。我能够在主打字稿文件中设置断点,但无法在下级打字稿反应文件中设置断点。