在Visual Studio中使用特定的TypeScript编译器版本

Ale*_*kov 18 visual-studio typescript

我想知道是否有办法在Visual Studio中为项目设置特定的TypeScript编译器版本.因此,我可以将项目配置为始终使用版本1.0,即使将发布新版本.

我知道以前是不可能的,我想知道在TypeScript成熟到1.0版之后情况是否会发生变化.

我注意到现在Visual Studio <TypeScriptToolsVersion>0.9</TypeScriptToolsVersion>在项目文件中创建属性,但找不到任何有关它的文档.

Kri*_*all 24

如果您尝试<TypeScriptToolsVersion>0.9</TypeScriptToolsVersion>使用TypeScript版本1.0 编译项目,您将收到以下错误:

您的项目文件使用的TypeScript编译器和工具版本与此计算机上当前安装的版本不同.在C:\ Program Files(x86)\ Microsoft SDKs\TypeScript\0.9\tsc.exe中找不到编译器.您可以通过更改项目文件中的元素来解决此问题.

因此,它阻止您使用较新版本进行编译.但它并没有将编译器置于0.9兼容模式.

但是如果安装了TypeScript 0.9,它将针对该版本进行编译.所以,是的,您可以使用该属性强制使用特定版本的TypeScript编译器.

基本上<TypeScriptToolsVersion>它的作用是它改变了编译器的路径:

C:\Program Files (x86)\Microsoft SDKs\TypeScript\<TypeScriptToolsVersion>\tsc.exe
Run Code Online (Sandbox Code Playgroud)

  • @MartinAndersson web.config (4认同)
  • 这个秘密项目文件你们(你们+提问者)都在说,是哪一个?我无法在任何地方找到这个条目. (2认同)
  • @MartinAndersson我指的是msbuild目标文件.如果您正在使用VS中的C#项目,那么这是您的*.csproj文件. (2认同)

Oğu*_*kan 9

我在条件声明中添加了$(TypeScriptToolsVersion)\后来解决了它TypeScript\.

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets"
Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\$(TypeScriptToolsVersion)\Microsoft.TypeScript.targets')" />
Run Code Online (Sandbox Code Playgroud)


Ken*_*lar 5

Visual Studio版本 - > VS2013

  1. 安装Typescript 1.8 - > https://visualstudiogallery.msdn.microsoft.com/9d0e9172-244a-4943-94e5-bd24dffd9536
  2. 打开项目的文件夹位置,例如右键单击项目>在文件资源管理器中打开文件夹
  3. 通过文本编辑器(例如WebApplication1.csproj)查找并打开项目文件
  4. 在"PropertyGroup"元素下找到"TypeScriptToolsVersion"标记并使用1.8.像这样,
  <PropertyGroup>
  ......
    <IISExpressUseClassicPipelineMode />
    <TypeScriptToolsVersion>1.8</TypeScriptToolsVersion>
  </PropertyGroup>
Run Code Online (Sandbox Code Playgroud)