6

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

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

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

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

我已经尝试重新启动(VS 和 Win 7),这会修复它一段时间,但最终它会一次又一次地停止工作。

这很烦人,因为我一天中的大部分时间都在编写 TypeScript。

4

7 回答 7

1

我编写了 grunt-ts 来进行我们的打字稿编译,每次都能可靠地工作:https ://npmjs.org/package/grunt-ts

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

于 2013-10-15T04:23:58.680 回答
1

我发现生成初始 .js 文件需要进行项目编译(cs/vb)。之后,保存时编译的打字稿正常工作。

于 2013-10-15T10:41:18.367 回答
0

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

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

于 2014-05-02T16:23:58.150 回答
0

I solved it by right-click on the typescript file and setting the BuildAction to None.enter image description here

于 2014-08-02T19:04:57.380 回答
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" />

Additinaly,我不得不保存我的大部分 .ts 文件并将文件编码设置为代码页 65001。

于 2013-11-24T09:24:09.300 回答
0

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

保存时编译

另请参阅我在此处的回答,了解我对 TypeScript 支持的一些可疑混淆的看法。

于 2013-12-11T22:34:48.770 回答
0

我有同样的问题,在调试程序大约两个小时后,打字稿编译根本不起作用。重新启动系统没有帮助,重新启动 Visual Studio 也没有帮助。最终对我有用的是删除名为“Web Essentials”的工具

于 2015-05-14T22:42:43.563 回答