TypeScript 0.9.1.1并不总是在保存时编译

时间:2013-10-15 01:07:36

标签: typescript

使用VS 2012 Update 3,TSC 0.9.1.1。和最新版本的Web Essentials(尽管这是一个问题,因为Web Essentials删除了对TypeScript的支持)。

TypeScript通常不会在保存时编译。我不得不求助于同时打开.js文件,并希望我收到有关文件更改的消息。但突然间它会停止构建,因此文件不会被更改,我也看不到消息。

有时,TypeScript正在生成的错误错误似乎是一个问题,我知道它们是因为通常会删除“;”并将其添加回来通常会让它重新考虑它的错误并将其删除。该错误甚至不必在该文件上,修复错误永远不会修复save&编译“功能”。

我发现唯一的“修复”是关闭.ts文件和.js文件(.js文件很重要)。然后打开.ts,等待它完全加载,然后按顺序加载.js文件,否则它将永远不会工作(你不必打开.js文件,但如果你先打开它不行。)

我已经尝试重启(VS和Win 7)并且会修复它一段时间,但最终经常会停止工作。

这非常烦人,因为我在一天中绝大多数时间都在写TypeScript。

7 个答案:

答案 0 :(得分:1)

我创作了grunt-ts来做我们的打字稿编译,每次都可靠地运作:https://npmjs.org/package/grunt-ts

查看视频教程:http://youtu.be/Km0DpfX5ZxM

答案 1 :(得分:1)

我发现做一个项目编译(cs / vb)是生成初始.js文件所必需的。之后,在save上编译的typescript工作正常。

答案 2 :(得分:0)

您必须手动升级visual studio项目的csproj文件。 我必须包含以下几行才能在保存功能上进行编译。

<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
<TypeScriptTarget>ES5</TypeScriptTarget>
<TypeScriptIncludeComments>true</TypeScriptIncludeComments>
<TypeScriptSourceMap>true</TypeScriptSourceMap>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
<TypeScriptTarget>ES5</TypeScriptTarget>
<TypeScriptIncludeComments>false</TypeScriptIncludeComments>
<TypeScriptSourceMap>false</TypeScriptSourceMap>
</PropertyGroup>
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" />

另外,我必须保存大部分.ts文件并将文件编码设置为代码页65001。

答案 3 :(得分:0)

请尝试按照这些说明操作,确保每个TypeScript文件的构建操作都设置为 TypeScriptCompile

Compile-on-Save

另请参阅我的回答HERE,了解我对TypeScript支持的一些可疑混淆。

答案 4 :(得分:0)

我发现关闭访问javascript文件的任何应用程序(在我的情况下是记事本++),然后再次重新打开javascript文件就足够了。我不需要退出Visual Studio或关闭并重新打开Visual Studio中的任何Typescript文件。

我正在运行VS Express 2013 for Web update 2 RC。

答案 5 :(得分:0)

我通过右键单击typescript文件并将BuildAction设置为None来解决它。enter image description here

答案 6 :(得分:0)

我遇到了同样的问题,在完成两个小时的程序调试后,打字稿编译根本不起作用。重新启动系统没有帮助,重新启动Visual Studio没有帮助。最终对我有用的是删除名为&#34; Web Essentials&#34;