ASP.NET 5项目中设置的TypeScript Tools版本在哪里?

时间:2016-03-01 05:02:00

标签: typescript visual-studio-2015 asp.net-core

我正在使用默认 ASP.NET 5 Web项目模板,并尝试确定如何为我的应用程序指定TypeScript工具和最终编译器版本。

但仍在使用Gulp所以这篇帖子answer似乎没有用水。原因是,我的应用程序即使没有Gulp也必须告诉使用哪种TypeScript编译器。此answer也不是要查找版本,而是使用尚未支持的功能。

在VSNET 2013中,TypeScript工具版本和目标编译器已在项目的属性中设置:

<TypeScriptToolsVersion>1.7</TypeScriptToolsVersion>

我认为它是我compilerOptions文件的tsconfig.json部分的一个选项。但是我没有version的智能感知,看起来文档很稀疏。这个link表示它只是发出编译器的版本,但不允许指定它。

我目前在我的机器上安装了1.6和1.7版本。如果我需要指定特定的编译器版本,我该如何在ASP.NET 5 Web模板中设置它?同样,答案并不是立即使用Gulp,因为它现在正在构建和编译我的.ts文件,因此有些事情要求使用编译器。

3 个答案:

答案 0 :(得分:6)

在下列文件中设置了ASP.NET 5项目的TypeScript工具(和相应的编译器版本):

TS 1.7: C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v14.0 \ TypeScript \ Microsoft.TypeScript.targets

<PropertyGroup>
    <TypeScriptToolsVersion Condition="'$(TypeScriptToolsVersion)'==''">1.7</TypeScriptToolsVersion>
    <TscToolPath Condition="'$(TscToolPath)' == ''">$(MSBuildProgramFiles32)\Microsoft SDKs\TypeScript</TscToolPath>
    <TscToolExe Condition="'$(TscToolExe)' == ''">tsc.exe</TscToolExe>
    <TscYieldDuringToolExecution Condition="'$(TscYieldDuringToolExecution)' == ''">true</TscYieldDuringToolExecution>
</PropertyGroup>

TS 1.8 C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v15.0 \ TypeScript

<PropertyGroup>
    <TypeScriptToolsVersion Condition="'$(TypeScriptToolsVersion)'==''">1.8</TypeScriptToolsVersion>
    <!-- Check the default folder for the nuget version of the installer first, if that exists we should use that. -->
    <TscToolPath Condition="'$(TscToolPath)' == '' AND Exists('$(MSBuildThisFileDirectory)tsc\tsc.exe') ">$(MSBuildThisFileDirectory)tsc\</TscToolPath>
    <TscToolPath Condition="'$(TscToolPath)' == ''">$(MSBuildProgramFiles32)\Microsoft SDKs\TypeScript</TscToolPath>
    <TscToolExe Condition="'$(TscToolExe)' == ''">tsc.exe</TscToolExe>
    <TscYieldDuringToolExecution Condition="'$(TscYieldDuringToolExecution)' == ''">true</TscYieldDuringToolExecution>
</PropertyGroup>

请注意,上面配置中的第1行对于TypeScript 1.7编译器具有值1.7

答案 1 :(得分:3)

Visual Studio 2015 IDE将使用PATH中指定的TypeScript。如果您可以将它从TypeScript 1.7更改为1.8,它将与ASP.NET 5应用程序和其他应用程序一起使用。

不需要使用GULP,我希望您使用VS IDE或其VS代码

此方法将强制所有其他应用程序仅使用TypeScript 1.8,但非ASP.NET 5应用程序在proj文件中有条目。

答案 2 :(得分:1)

如果您在Visual Studio中收到警告:

警告您的项目未指定TypeScriptToolsVersion。的 将使用最新的可用TypeScript编译器(x.y)。去除 此警告,请将TypeScriptToolsVersion设置为特定版本或 “最新”以始终选择最新的编译器。

您可以在项目属性中编辑TypeScript Tools Version。如果您将TypeScript version的值设置为“未指定”,则会收到此警告。将其设置为“使用最新可用”,警告将消失。

enter image description here