2

我正在使用Microsoft Visual Studio 2013 Update 4来调试Web应用程序。首先,我在Internet Explorer上运行Web应用程序,然后使用Visual Studio中的“附加到进程”调试选项来附加iexplore脚本进程。然后,我立即在解决方案资源管理器中获得一个名为“Script Documents”的新节点。在该节点中,我找到了所有的JavaScript文件以及列出的各自的打印文件。从此,我可以打开JavaScript文件并设置断点。不幸的是,我无法为打字稿文件做同样的事情。试图打开它时,出现'404未找到'错误。仔细观察后,我发现用于检索它们的URL路径是错误的。因此,我开始检查源文件的路径是否在编译打字稿文件时生成的源地图中正确设置。它看起来像是正确设置的。我检查源地图是否正确的一种方法是使用开发工具在Internet Explorer和Chrome上进行调试。他们的工作完美无瑕。因此,我唯一可以得出的结论是,当Visual Studio连接到IE时,源映射解释发生了一些情况。Visual Studio使用源映射进行调试

为了正确阐明这一点,让我简单地解释我的源地图是怎样的。下面你会发现我的源地图文件的模板。

{ 
version : 3, 
file : "someFile.js", 
sourceRoot : "/", 
sources : ["some/relative/path/someFile.ts"], 
names : ["bla", "bla", "bla"], 
mappings: "aaaG,agAA,agGG,acAA" 
} 

所以,我期待看到在脚本文件节点是打字稿文件的路径(如果我们假设web应用程序是在本地主机上运行):http://localhost:8081/some/relative/path/someFile.ts

而是我看到的路径是:http://localhost:8081/(AbsolutePathToWhereTheJSFileIs)/some/relative/path/someFile.ts

这终于明白我为什么在阅读文件时出错。我不明白为什么在它们之间插入绝对路径,而在我的源地图规范中没有指示。我尝试了很多其他路径变体,但保持脚本的目录的绝对路径总是在中间弹出。我甚至在寻找可能会关闭它的设置(如果有的话),但我无法找到任何设置。对于我面临的这个问题,我将不胜感激。

干杯!

+0

另请参阅此问题:http://stackoverflow.com/questions/29342738/debugging-minified-javascript/36304724#36304724 – 2016-03-30 10:54:50

回答

0

我已经找到问题所在。在我的组织中处理节点服务器的代码正在做一些我没有注意到的事情。但是在创建简单的示例测试以在此共享时,我能够这样做。因此,在Visual Studio &调试中附加iexplore脚本进程无需麻烦。

1

这是你的真实.map文件?

{ 
version : 3, 
file : "someFile.js", 
sourceRoot : "/", 
sources : ["some/relative/path/someFile.ts"], 
names : ["bla", "bla", "bla"], 
mappings: "aaaG,agAA,agGG,acAA" 
} 

或者你得到

{ 
version : 3, 
file : "someFile.js", 
sourceRoot : "/", 
sources : ["(AbsolutePathToWhereTheJSFileIs)some/relative/path/someFile.ts"], 
names : ["bla", "bla", "bla"], 
mappings: "aaaG,agAA,agGG,acAA" 
} 

在任何情况下,你正在寻找一起玩的选项是编译器标志sourceRoot这是AbsolutePathToWhereTheJSFileIs配置选项。

+0

我的'.map'文件与我写的完全相同。它不包含'AbsolutePathToWhereTheJSFileIs'。而且我一直在玩'-sourceRoot'标志,地图文件没问题。我可以在Internet Explorer上调试,也可以在Chrome上调试。问题出现的唯一时候是当我将iexplore脚本进程附加到Visual Studio时,我无处不在,将绝对路径插入到打字稿文件的路径中。你有什么想法,为什么这可能是? – KonyKing 2014-11-25 08:35:51

+0

然后必须是一些项目配置。没有线索。也许在这里报告:https://github.com/Microsoft/TypeScript/issues – basarat 2014-11-25 23:11:06

+0

也许这不是一个真正的手稿问题,但我会试一试。谢谢你的时间。 – KonyKing 2014-11-26 00:04:25

相关问题