Google chrome TypeScript源映射文件不';我不能和铬一起工作

Google chrome TypeScript源映射文件不';我不能和铬一起工作,google-chrome,typescript,web-essentials,source-maps,Google Chrome,Typescript,Web Essentials,Source Maps,我试图让TypeScript源代码调试在Chrome中工作,但我遇到了两个特定的问题,可能是相关的问题 第一个是TypeScript/WebEssentials编译器生成的注释,用于标识源映射文件的位置,如下所示: //sourceMappingUrl=MySourceFile.js.map 但Chrome不会读取该文件。我们似乎希望评论是这样的: /@sourceMappingUrl=MySourceFile.js.map 如果我手动将注释更改为该注释,并刷新我的页面,那么对所有.ts文件的引

我试图让TypeScript源代码调试在Chrome中工作,但我遇到了两个特定的问题,可能是相关的问题

第一个是TypeScript/WebEssentials编译器生成的注释,用于标识源映射文件的位置,如下所示:

//sourceMappingUrl=MySourceFile.js.map

但Chrome不会读取该文件。我们似乎希望评论是这样的:

/@sourceMappingUrl=MySourceFile.js.map

如果我手动将注释更改为该注释,并刷新我的页面,那么对所有.ts文件的引用将神奇地显示为Chrome Developer工具中的源代码

然而,这导致了我的第二个问题,因为文件实际上没有被加载。Chrome应该尝试下载的.ts源文件是
http://localhost/MySourceFile.ts
,但它实际上试图下载的是
http://localhost/C:/source/web/MySourceFile.ts
。这有点道理,因为MySourceFile.js.map的开头属性如下所示:

{“version”:3,“file”:“tmp1523.tmp”,“sources”:[“C:/source/web/MySourceFile.ts”

但这显然不适用于Chrome,因为它将源地图位置解释为完全相对的,IIS(非常正确)不会提供任何类似
http://localhost/C:/source/web/MySourceFile.ts

那么,关于这两个问题,是Chrome还是TypeScript源代码映射功能做错了?推荐的方法是什么


我正在使用Chrome 25.0.1323.1 dev-m,带有TypeScript 0.8.1和WebEssentials 1.8.5。

的1.8.5版(当前可从Visual Studio Gallery获得的版本)存在问题。最新的夜间版本(在撰写本文时)修复问题并正确生成映射链接。

这可能是Web Essentials的问题。这可能是因为编译器的行为发生了变化。由于一些错误,我们1.8.2和更高版本使用TS 0.8.0/WE 1.8.1,并且源映射在Chrome中正常工作。我的源映射开始于
{“version”:3,“file”:“pe.plugins.js”,“sources”:[“pe.plugins.ts”]…(etc)
,JS注释是
/@sourceMappingURL=pe.plugins.JS.map
。不确定新的源代码映射功能是否与Chrome兼容,现在他们已经将其更改为在VS/IE中工作?请参见此(页面的一半更新):-
一些早期版本的Web Essentials 2012可能会干扰TypeScript调试…我在使用Web Essentials 2012版本1.8.8.1时取得了很大的成功。
@JcFx-最后一个版本。Web Essentials的版本位于(目前为1.8.9.66,而1.8.5在上可用)正确生成映射文件。将其放入一个答案中,我会给您评分:-)。我曾尝试在chrome中调试启用chrome的源映射中的typescript,也尝试在ie10中调试,但在vs中从未遇到断点2012@Nikos-TypeScript中的sourcemap支持似乎还没有很好地工作。我最终实现了它关闭-只是有太多的bug。在VS2012中,如果你在IE中刷新你的页面,你的TS断点都不会被击中。因此,我在浏览器中而不是在VS2012中进行调试。在Chrome中,它一直对我很有效。我通常使用“调试器”(或使用Chrome F12工具)设置断点当它崩溃时,我会得到ts源代码(而不是js),可以查看ts成员的值等。除了在他们引入该功能时进行快速测试外,我还没有使用VS2012进行调试-对于客户端代码来说,这似乎有点笨拙。@Nikos-ts 0.8.2可能会解决您的一些问题:我们在0.8.2中进一步改进了Visual Studio TypeScript调试体验。调试会话期间,调试器现在将在F5(刷新)后启用断点。再加上保存时编译,编辑和调试web应用的工作流与保存编辑的更改和刷新浏览器一样简单。“@JcFx谢谢你,伙计!干得好!我现在访问的几乎每家公司都提倡TS。