Visual Studio 2015 RC保存TypeScript文件时未创建源代码映射。

12
我非常新于TypeScript,正在最新的Visual Studio 2015 RC中尝试它。目前,当我保存ts文件时,它会自动编译typescript文件并创建底层js文件(很好地位于.ts文件下方),但是没有sourcemap文件,因此在调试时在视觉工作室中无法命中任何断点(无论使用IE还是Chrome canary)。有没有办法启用它,使其在保存时生成sourcemap文件?从搜索中发现,许多曾经在Web Essentials中的编译器选项已经移动或不可用(尚未?):

Screenshot of old options-dialog

3个回答

16

我发现通过卸载项目并编辑“xproj”文件,如果在项目节点下(包含“VSToolsPath”的属性组之前)添加以下xml:

<PropertyGroup>
    <TypeScriptTarget>ES5</TypeScriptTarget>
    <TypeScriptCompileOnSaveEnabled>true</TypeScriptCompileOnSaveEnabled>
    <TypeScriptNoImplicitAny>false</TypeScriptNoImplicitAny>
    <TypeScriptModuleKind>AMD</TypeScriptModuleKind>
    <TypeScriptRemoveComments>false</TypeScriptRemoveComments>
    <TypeScriptOutFile></TypeScriptOutFile>
    <TypeScriptOutDir></TypeScriptOutDir>
    <TypeScriptGeneratesDeclarations>false</TypeScriptGeneratesDeclarations>
    <TypeScriptSourceMap>true</TypeScriptSourceMap>
    <TypeScriptMapRoot></TypeScriptMapRoot>
    <TypeScriptSourceRoot></TypeScriptSourceRoot>
    <TypeScriptNoEmitOnError>true</TypeScriptNoEmitOnError>
</PropertyGroup>

这解决了问题,现在在保存时生成了.map文件(整齐地位于js文件下面)。这使我能够在Visual Studio中触发我的TypeScript断点(仅限于IE)。

另一个有益的副作用是我现在可以导出模块(由于'TypeScriptModuleKind' => AMD设置)。


2
你已经做对了。在 TypeScript Build 选项卡下,项目属性中有一个 UI 可供使用。如果你正在使用无项目类型的项目(比如 Web 项目),则默认设置在 Visual Studio 设置中的 TypeScript 语言选项中。 - NYCdotNet
1
我在项目属性(目前.NET5 Web项目选项非常稀少)或Visual Studio选项中什么都看不到。我不知道是因为它只是发布候选版还是我的安装有问题。 - MIP1983
1
我在使用Visual Studio 2015 RC开发ASP.NET 5应用程序时也看不到这些选项。感谢您提供的xproj解决方法 - 救了我的一天! :) - alek kowalczyk
请指定文件的位置。 - Rune Jeppesen

6

如果您想要添加一个新文件到您的项目中,我找到了一个替代方法。在添加时,选择TypeScript配置文件选项。这样,如果您添加一个“tsconfig.json”文件,就可以获得相同的设置:

{
  "compilerOptions": {
    "module": "amd",
    "noEmitOnError": true,
    "noImplicitAny": false,
    "removeComments": false,
    "sourceMap": true,
    "target": "es5"
  }
}

我认为这样做更好,因为它可以潜在地允许为不同文件夹中的不同 TypeScript 应用程序配置多个设置。对于我的项目,我已经将其放置在根目录下以全局应用。


0

我在https://github.com/Microsoft/TypeScript/issues/5001中找到了另一种解决.NET 4x项目的方法:

在TypeScript Build选项卡上切换一些随机设置(启用“生成源映射”),可以在项目属性中向项目文件添加新的TypeScript配置行,最终导致源映射在保存和(项目)构建时都生成。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接