有没有办法在Visual Studio中调试TypeScript源代码(而不是调试生成的javascript)?
从TypeScript语言规范:
TypeScript可选择提供源映射,从而启用源级调试.
因此,我希望能够在ts代码中放置断点并能够调试它,但它不起作用.我没有在规格中找到任何其他调试提及.我有什么办法让这项工作成功吗?也许"可选"这个词暗示我需要为它起作用......有什么建议吗?
编辑
为什么这个问题非常痛苦?到目前为止,当我调试/测试我的Web App时,我刚刚在VS IDE中编辑了.ts,保存,然后重新加载页面并测试了更改.现在我必须建立.但是,在VS IDE中运行调试会话时,不会启用构建.所以现在我必须做一个完整的往返:编辑.ts - >保存 - >停止调试 - >构建 - >启动调试.再次,这是非常痛苦的. 结束编辑
我在项目设置中的TypeScript Build选项卡中取消选中/保存/检查了设置.
<PropertyGroup>生成了相应的并保存到我的.csproj文件中.
(注意不要更改任何TypeScript Build设置,这<PropertyGroup>不存在(当使用以前使用VS 2013创建的现有项目时),并且构建 默认值与IDE UI上的默认值不同,因此您会误导.)
无论如何,在此更改/保存活动后,我的.csproj文件与IDE UI同步,它是:
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
<TypeScriptRemoveComments>True</TypeScriptRemoveComments>
<TypeScriptTarget>ES5</TypeScriptTarget>
<TypeScriptCompileOnSaveEnabled>True</TypeScriptCompileOnSaveEnabled>
<TypeScriptNoImplicitAny>False</TypeScriptNoImplicitAny>
<TypeScriptModuleKind>None</TypeScriptModuleKind>
<TypeScriptOutFile />
<TypeScriptOutDir />
<TypeScriptGeneratesDeclarations>False</TypeScriptGeneratesDeclarations>
<TypeScriptNoEmitOnError>True</TypeScriptNoEmitOnError>
<TypeScriptSourceMap>True</TypeScriptSourceMap>
<TypeScriptMapRoot />
<TypeScriptSourceRoot />
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
因为它显示了Compile on Save绝对启用了.仍然是.js文件仅在构建期间生成,而不是在保存.ts文件时生成.
顺便说一句:关于TypeScript编译是VS 2015实现中的msbuild任务,有趣的是,这个编译保存设置甚至可以工作......
更多诊断:有趣的是,如果我删除整个属性组,那么它实际上编译保存.(UI保持不变,并且仅在构建时不在保存上生成.map文件.)