无法在Visual Studio 2012中编译TypeScript文件

我为VS 2012下载并安装了TypeScript扩展,我通过手动将ts文件拖到tsc.exe文件上来编译我的第一个示例 因为编译文件没有其他方法可行。

每次我想调试页面时我都不想手动执行此操作! 我在网上看到了大约5篇文章,但没有一个解决方案有效。 我试过在Windows中添加TypeScript编译器到PATH,我尝试通过Nuget Package Manager下载并安装Sholo的东西,我试过这些页面:

  1. 在cshtml文件中使用TypeScript
  2. Visual Studio TypeScript选项
  3. 使用Visual Studio调试TypeScript代码
  4. 无法使用tsc节点模块编译打字稿
  5. TypeScript – Visual Studio – d3
  6. Visual Studio 2012 TypeScript项目在编译期间忽略两个文件
  7. TypeScript / Visual Studio 2012 /编译参数
  8. 在现有的Visual Studio Web站点项目中使用TypeScript
  9. Visual Studio TypeScript选项
  10. 在Visual Studio中编译生成的文件

并没有一个解决方案有效。

我甚至下载并安装了Visual Studio的Web Essentials插件,然后进入选项菜单,然后选择“在Build = True上编译所有TypeScript文件”和“在Save = True上编译TypeScript” – 但没有任何作用。

我已经阅读了整个TypeScript网站,规范,甚至是codeplex网站上的讨论标签。

当我将更改保存到.ts文件按F5 / Debug / Build时,如何才能编译TypeScript?

*我真的不想要任何第三方脚本/插件等,除非绝对必要。 我见过他们中的几个,这只是……没有意义。 我不妨写一些纯JavaScript。

您必须确保BuildAction必须是.ts文件的TypeScriptCompile。 我已将这些行添加到(.csproj)项目文件的末尾。 (在关闭Project标签之前)它看起来很有效。

   ES3 true true AMD   ES3 false false AMD   

当我将.js文件重命名为.ts时,我遇到了类似的问题。 您必须右键单击并向项目中添加新的TypeScript文件,以便.csproj能够识别应在此.ts文件上使用TypeScript编译器。

当您看到箭头展开.ts文件时,您会知道它是正确的。

在此处输入图像描述

如果将.js文件更改为.ts文件,则可以转到Visual Studio中的“属性”面板,并将“构建操作”更改为TypeScriptCompile。 这是更改文件时缺少的内容。 这可以帮助您避免删除和重新添加文件。

我有同样的问题。 我无法将新的.ts文件添加到项目中。 从.js重命名为.ts后,文件未编译。 它甚至没有在命令行中使用tsc编译。

但! 在Windows资源管理器中重新创建文件后,它已成功编译。 在Scripts文件夹中的Windows资源管理器(不是Visual Studio)中手动创建文件并将其包含到项目中之后 – 所有工作。 我无法检测到这两个文件之间的变化。 但是,如果您在资源管理器中创建文本文件,请将其重命名为.ts,然后将其包含在项目中并将文件的构建操作设置为TypeScriptCompile – 它可以正常工作。

插头

我创建了一个NuGet包,它将一个afterbuild目标添加到你的项目中,所以所有包含的ts文件都被编译为js。

Install-Package TypeScript.Compile

我有同样的问题。 我更新了Web要点扩展,问题解决了。 如果您有web essentials扩展,您可以尝试。

请检查您是否有无效的TypeScript。 有一些TypeScript错误未显示在错误列表中,但它们阻止TypeScript Compile-On-Save并在Visual Studio状态栏中显示Output generation failed消息。

这些是可能导致此问题的TypeScript错误:

  • export一个不在模块内部的类(v 0.9.5)。

如果有更多此类错误,请告诉我,我会在这里添加。