我已经到处寻找解决这个问题的方法,我已经接近了,但仍然有一点麻烦。
错误:
Build: Experimental support for decorators is a feature that is subject to change in a future release. Specify '--experimentalDecorators' to remove this warning.
每次使用装饰器时都会出现此错误。我用
设置了MSBuild <TypeScriptEmitDecoratorMetadata>True</TypeScriptEmitDecoratorMetadata>
<TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
并删除了一半的错误(编译错误,而不是构建错误)。但是,现在我被构建错误所困扰。.ts文件仍然被编译为.js,没有问题。***但是异常会妨碍构建解决方案的其余部分。
如果有任何不合理的,请让我知道。我不善言辞。
Edit:我发现.js是在保存时创建的,而不是构建时创建的。所以任何与构建相关的东西都是"破碎的"。"
我也遇到了同样的问题。我最后修改了。csproj将所有TypeScriptCompile
元素更改为普通的Content
元素,并且我使用了自己的编译任务(通过Gulp)。
<TypeScriptCompile Include="app.ts" />
变为<Content Include="app.ts" />
我还删除了任何引用Typescript相关MSBuild目标的导入,即<Import Project="$(MSBuildExtensionsPath32)MicrosoftVisualStudiov$(VisualStudioVersion)TypeScriptMicrosoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath32)MicrosoftVisualStudiov$(VisualStudioVersion)TypeScriptMicrosoft.TypeScript.targets')" />
我仍然得到IDE(和Resharper,如果你用它的话)对Typescript的支持——我只是明确地告诉Visual Studio不要为我的项目处理任何TS编译。似乎唯一的缺点是必须管理编译Typescript的Gulp任务。使用VS的Task Runner Explorer扩展,添加Gulp编译任务作为项目构建的一部分,或者只是在Gulp watch中使用Gulp任务,都可以减轻这种权衡。