我是打字稿的新手,我正在最新的Visual Studio 2015 RC中试用它。
当我保存ts文件时,它会自动编译typescript文件并创建底层的js文件(当你展开它时很好地在.ts文件下面)。但是,没有源映射文件,因此在调试时(无论使用IE还是Chrome金丝雀),我从未在visual studio中的打字稿中遇到任何断点。
有没有办法启用它,以便在保存时生成源图文件? 从搜索周围看来,许多编译器选项曾经在移动或不可用的Web必需品中(但是?):
答案 0 :(得分:16)
我发现通过卸载项目并编辑' xproj'文件,如果我在项目节点下添加以下xml(在包含' VSToolsPath'的属性组之前):
<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中点击我的打字稿断点(不幸的是只能使用IE)。
另一个有益的副作用是我现在可以导出模块(因为&Type; TypeScriptModuleKind&#39; =&gt; AMD设置)。
答案 1 :(得分:6)
如果您要在项目中添加新文件,我找到了另一种选择,有一个打字稿配置文件选项。所以如果你添加一个&ts; tsconfig.json&#39;你得到相同的设置:
{
"compilerOptions": {
"module": "amd",
"noEmitOnError": true,
"noImplicitAny": false,
"removeComments": false,
"sourceMap": true,
"target": "es5"
}
}
我想这更好,因为它可能允许在不同文件夹中为不同的打字稿应用程序进行多种配置。对于我的项目,我只是将它放在根目录中以便全局应用。
答案 2 :(得分:0)
我在https://github.com/Microsoft/TypeScript/issues/5001中找到了另一个.NET 4x项目解决方案:
在TypeScript构建选项卡上切换一些随机设置(使用&#34;生成源映射&#34;已启用)在项目属性中将新的TypeScript配置行添加到项目文件中,(最后)导致源映射生成保存和(项目)构建。