248

也许这很明显,但我查遍了所有地方(除了正确的地方)并在谷歌上搜索。什么都没有。

0

19个答案19

重置为默认值
284

如果仅为Visual Studio安装了TypeScript,则:

  1. 启动Visual Studio命令提示
  2. 类型tsc-v然后按Enter键

Visual Studio 2017 15.3及以上版本将TypeScript版本绑定到各个项目这个答案指出了:

  1. 在解决方案资源管理器中右键单击项目节点
  2. 单击属性
  3. 转到TypeScript生成选项卡
6
  • 7
    这对我不起作用。我使用vs命令窗口。我有vs 2013更新3。它只是说命令“tsc”无效。。可能出了什么问题? 评论 2014年10月27日14:57
  • 7
    @古斯塔夫,我想你正在使用VS的集成命令窗口(查看->其他窗口->命令窗口). 你应该使用Visual Studio命令提示来自开始菜单.
    – 奥拉德
    评论 2015年2月17日23:32
  • 4
    我用过包管理器控制台,它也起了作用(当你使用金块时,它就可用了) 评论 2015年7月14日13:49
  • 1
    这对我不起作用,我找到了答案stackoverflow.com/a/39912302/191647 评论 2016年10月7日8:00
  • 2
    Visual Studio外部:npm install-g typescript;tsc-v 评论 2018年3月10日16:08
83

问题提出两年后,使用Visual Studio命令提示仍然没有为我提供正确的答案。但这些天通常的“帮助|关于”窗口似乎在工作:

VS社区“关于”对话框的快照

更新(2017年6月):

  1. VS 2013未显示此信息。(稍后注意:VS 2017企业版也没有显示此信息)。

  2. VS使用Microsoft生成引擎(MSBuild)编译Typescript文件。MSBuild可以支持几个主要版本的Typescript,但“关于”窗口仅显示最新版本。

下面是如何找到真相的方法:

A.要检查Visual Studio/MBuild中安装了哪些版本的Typescript,请检查C: \程序文件(x86)\Microsoft SDKs\TypeScript文件夹。例如,我有1.0、1.8和2.2版:

键入脚本版本作为文件夹名称

B.检查字体的版本请求由您的项目决定。在*.csproj文件中,查找<TypeScriptToolsVersion>标记,或者如果缺少标记,可以添加它,如下所示


<属性组>...<TypeScriptToolsVersion>1.8...</PropertyGroup(属性组)>

C.最后,您可以检查Typescript的实际版本习惯于由MSBuild提供。工具|选项|项目和解决方案|构建和运行设置MSBuild项目输出详细信息详细的:

在此处输入图像描述

然后构建项目并检查输出:您应该看到对(A)中描述的一个Typescript文件夹的引用。

0
55

基于玄武岩,我在这里提供了如何在Visual Studio 2013中运行此功能的更多信息。

  • 转到Windows开始按钮->所有程序->Visual Studio 2013->Visual Studio工具打开一个窗口,其中包含工具列表。

Visual Studio工具的菜单路径

  • VS2013的选择开发人员命令提示符
  • 在打开的控制台中写入:tsc-v
  • 你得到的版本:参见图片

在此处输入图像描述

[更新]

如果您将Visual Studio更新为新版本的Typescript 1.0.x,则此处看不到最新版本。要查看最新版本:

  • 转到:C:\Program Files(x86)\Microsoft SDKs\TypeScript,在那里可以看到0.9、1.0和1.1类型的目录
  • 输入您拥有的高数值(在本例中为1.1)
  • 复制目录并在CMD中运行命令tsc-v,即可获得版本。

在此处输入图像描述

注释:Typescript 1.3安装在目录1.1中,因此运行命令以了解您安装的最新版本非常重要。

注释:您可能已经安装了1.3版,代码使用1.0.3。为了避免这种情况,如果您在单独的项目中使用Typescript,请卸载该项目并查看Typescript标记是否:

<TypeScriptToolsVersion>1.1

设置为1.1。

[更新2]

TypeScript版本1.4、1.5。。1.7安装在1.4、1.5…1.7目录中。他们不难找到版本。如果您在单独的项目中有类型脚本,并且您从以前的类型脚本迁移过来,那么您的项目将继续使用旧版本。要解决此问题:

卸载项目文件并在以下位置将typescript版本更改为1.x:

<TypeScriptToolsVersion>1.x

如果使用visual studio安装程序文件安装了typescript,则新的typescript编译器的路径应自动更新为指向1.x目录。如果有问题,请检查环境变量Path include

C: \程序文件(x86)\Microsoft SDKs\TypeScript\1.x\

对微软的建议:-)因为Typescript与其他版本并行运行,所以最好在项目属性中有一个组合框来选择Typescript编译器(类似于选择网络版本)

5
  • 1
    我在SDK文件夹中有1.0和1.4目录,设置<TypeScriptToolsVersion>1.4</TypeScriptToolsVersion>没有任何作用。Project仍在使用1.0。我必须删除1.0才能正确加载1.4。 评论 2015年4月22日0:11
  • 嗨,不,你不需要删除其他文件夹。请在1.4目录中输入并在那里运行tsc-v。招呼 评论 2015年4月24日23:36
  • 更改PATH环境变量,使TypeScript 1.4路径位于1.0路径之前,从而使VS2013 Update 4为我使用1.4版本。(唉!)也许有人可以澄清PATH环境变量与<TypeScriptToolsVersion>的正确使用。
    – 伊恩·W
    评论 2015年5月8日15:14
  • @IanW-我相信路径变量是什么tsc-v将读取(从命令行根;导航到各个SDK目录,运行命令将显示实际版本),但VS.NET将使用<类型脚本工具版本>.csproj文件中的值。看起来tsc-v有点误导路径安装较新版本的TypeScript时,变量值不会更新。请参见以下内容:github.com/Microsoft/TypeScript/issues/2068 评论 2015年7月13日22:11
  • 1
    微软表示不同意,但有一个组合框智能感知版本,您需要仔细检查。工具>选项>文本编辑器>Javascript/Typescript>Typescript版本 评论 2017年5月23日19:47
28

这个tsc-v命令运行技术上读取Windows中设置的SDK目录中的TypeScript编译器版本路径变量。这并不一定反映作为路径变量是随后续安装更新。

VS.NET用于编译TypeScript的版本是项目配置中的版本:

<TypeScriptToolsVersion>1.5

为了更详细地解释这一点,我创建了以下帖子,其中详细介绍了安装的TypeScript版本,以及VS.NET使用哪个版本编译TypeScript文件。

安装了哪个版本的TypeScript,Visual Studio使用的是哪个版本?

我还在Microsoft Connect上添加了一个功能请求,以使在VS.NET中查看和切换TypeScript目标版本更加容易。这实际上不是一个TypeScript功能请求,而是一个VS.NET IDE增强。

允许从项目属性IDE切换TypeScript配置的版本

4
  • 我的配置是1.7,但在一个.ts文件中写入时,它告诉我是1.4(我尝试使用名称空间,intellisense说我使用的是1.4,这只在中的1.5及更高版本中可用)
    – 托尼
    评论 2016年5月13日0:27
  • 2
    编辑:我的问题是由Resharper引起的。它还有一个设置,可以告诉它在哪个版本的打字脚本上编译。天哪,
    – 托尼
    评论 2016年5月13日0:50
  • 1
    您的答案假设所有工作都保存为项目文件。文件夹可以作为web项目打开。对于这种网络项目,还有其他解决方案吗? 评论 2016年11月30日22:28
  • 该功能在VS 2017中实现。 评论 2018年4月25日上午10:17
14

TypeScript团队解决了这个问题在Visual Studio 2017 15.3版及更高版本中,包括免费社区版。

如何查看在Visual Studio中安装了哪些TypeScript版本

您现在需要做的就是转到任何TypeScript Visual Studio项目的项目属性(右键单击解决方案资源管理器/属性中的项目文件),然后转到左侧的TypeScript构建选项卡。这有一个“Typescript版本”下拉列表,显示项目正在使用的版本,以及如果您打开它下拉列表显示当前安装在Visual Studio中的所有版本的TypeScript.

实际安装当前位于C: \程序文件(x86)\Microsoft SDKs\TypeScript然后按版本号列出子文件夹,至少在我的计算机上的Win10上是这样。如果你想看到准确的版本(例如2.8.3而不仅仅是2.8),你可以找到合适的tsc.exe文件并查看其属性(右键单击中的“详细信息”选项卡/文件资源管理器中的“属性”)。

如何安装特定的TypeScript版本

如果要安装特定版本的TypeScript,可以在上找到Visual Studio市场,尽管在该列表中很难找到特定的版本号。例如,谷歌搜索“visual studio market typescript 3.3.1”通常会找到您想要的确切版本。如果从这里安装并重新启动Visual Studio,则版本将显示在下拉列表中。另请注意,如果安装了更新的版本,某些最新版本的TypeScript(例如4.2)将拒绝安装。

Node.js控制台应用程序

此答案不适用于“Node.js控制台应用程序”项目类型,该项目类型在项目属性中没有TypeScript Build选项卡。这是因为它使用的是使用npm安装在项目文件夹中的TypeScript版本。版本可以在package.json文件中查看和更改,安装后会显示在解决方案资源管理器的npm条目下,以及磁盘上的node_modules/typescript文件夹中。

2
  • 1
    事实上,没有。VS 2015没有TS版本的下拉列表。
    – 凯特
    评论 2018年9月27日8:10
  • 可能与全局版本冲突,因此在计算机中全局安装并设置环境变量的版本和通过npm安装的特定项目的版本会导致冲突? 评论 2022年3月4日5:50
12

在Visual Studio 2015上,只需转到:help/about Microsoft Visual Studio然后你会看到这样的情况:

Microsoft Visual Studio企业版2015版本14.0.24720.00更新1微软。NET框架版本4.6.01055

...

TypeScript 1.7.6.0版Microsoft Visual Studio的TypeScript

....

2
  • 我刚安装了1.8.6版的typescript,现在仍然是1.8.36版。它也是工具->扩展和更新中的后一个版本。因此,如果您想知道您的项目使用的是最新版本,那么这并不是一个好的迹象。 评论 2016年9月1日9:32
  • 我只想补充一点,我不知道微软1.8.36版本是从哪里获得的……看起来它应该高于1.8.6,36>6,但它不是。。。这是我所经历过的最混乱的版本控制。。。 评论 2016年9月1日9:52
11

您可以在Visual Studio 2013的NuGet包管理器控制台中运行它。

  • 在VS2012中,也可以使用:工具->库包管理器->包管理器控制台 评论 2015年3月16日14:49
  • 我看过npm install-g typescript命令,但它对我不起作用吗?
    – 朱尔斯
    评论 2015年4月22日16:09
  • @Jules尝试检查系统PATH变量中是否有“C:\Program Files(x86)\Microsoft SDKs\TypeScript\1.0\;”。我也遇到了同样的问题,在我使用“npm install-g typescript”安装后,它根本不会使用1.5.0测试版,但这是因为PATH干扰了它,当我输入tsc时,它首先在PATH中查找,然后运行1.0.3。 评论 2015年5月18日3:18
6

据我所知,VS与NPM安装的TS无关。(您可能会注意到,在使用NPM安装TS后,没有tsc.exe文件)。VS只针对TS为VS扩展安装的tsc.exe,该扩展将TS安装到c:\Program Files(x86)\Microsoft SDKs\TypeScript\X.Y。您可能在c:\Program Files(x86)\Microsoft SDKs\TypeScript下有多个文件夹。将TypeScriptToolsVersion设置为已安装的最高版本。在我的例子中,我有文件夹“1.0”、“1.7”、“1.8”,所以我将TypeScriptToolsVersion设置为1.8,如果在该文件夹中运行tsc-v,将得到1.8.3或其他值,但是,当在该文件夹外运行tsc时,它将使用指向NPM安装的TS版本的PATH变量,在我的示例中是1.8.10。我相信VS的TS将始终落后于使用NPM安装的最新版本的TS。但据我所知,VS对NPM安装的TS一无所知,它只针对TS为VS扩展安装的五个版本,以及项目文件中TypeScriptToolsVersion中指定的版本。

5

我有VS2015,我必须使用TypeScript 1.7运行构建,尽管我通过安装了1.8npm安装typescript-g有两种方式(至少对我来说是这样的):

  1. 转到您的.项目文件并添加<TypeScriptToolsVersion>1.7尽可能向上。重建、重新运行。如果不起作用,试试2。
  2. 控制面板->系统->高级系统设置->环境变量。请确保首先添加所需的TypeScript版本:C: \程序文件(x86)\Microsoft SDKs\TypeScript\1.7;C: \Users\serban\AppData\漫游\npm

这还将影响您的CLI:

$tsc-v消息TS6029:版本1.7.5
1
5

首先,确保您的环境变量 路径

C: \程序文件(x86)\Microsoft SDKs\TypeScript\2.0

然后打开您的命令提示符并键入以下命令:

tsc-v
5

你能做到的npm列表| grep typescript如果它是通过npm安装的。

4

在命令提示符中,只需键入以下命令中的1,然后单击输入:

  • tsc-v

  • tsc-版本

  • tsc--版本

注意:请确保已将Typescript添加到环境变量路径中在运行命令之前,详细信息如下:如何设置环境变量.

5
  • 1
    上面写着“tsc不被识别”。
    – 凯特
    评论 2018年9月27日8:15
  • 确保在环境变量中设置了typescript,在我的示例中,它看起来像这样:C:\Program Files(x86)\Microsoft SDKs\typescript\2.2
    – 姆维扎
    评论 2018年9月28日9:14
  • 2
    那些用于本地安装的不起作用,而是使用自npm 5.2.0以来的“npx tsc--version” 评论 2022年3月4日9:31
  • @卡米内·坦巴西娅,你应该经常回答这个问题,这个回答了我的问题,谢谢!
    – 副翼79
    评论 2023年5月24日14:52
  • 1
    @副翼79我刚刚做了如果可能是帮助别人:) 评论 2023年5月24日21:08

打开(正常,而不是VS)命令提示符或PowerShell提示符。

tsc.exe-vtsc.cmd-vtsc-v

如果您为Visual Studio安装了相同版本的TypeScript并使用npm,则上述三个命令的输出应该相同。

如果没有,请检查系统路径以查看路径层次结构中的位置以及列出的类型脚本目录。对于PowerShell用户,简单的方法是:$env:path-拆分“;”

注意不要在System PATH变量中列出任何或多个TypeScript目录。截至2017年6月9日,我的系统路径如下所示(仅顶部,这是这种情况下最重要的部分):ps>$env:path-split“;”C: \Windows\system32C: \窗口C: \Windows\System32\WbemC: \Windows\System32\WindowsPowerShell\v1.0\C: \程序文件(x86)\Microsoft SDKs\TypeScript\2.3C: \节点\C: \用户\{用户名}\AppData\Roaming\npm

请注意只有2.3目录包含在PATH中,而不是多个版本。

2023年更新

添加对我有用的内容:

对于那些无法进行本地安装的应用程序,请使用:

自npm 5.2.0以来的“npx tsc--版本”
2

对于非命令行方法,可以打开扩展和更新窗口(工具->扩展和更新),然后搜索Microsoft Visual Studio的类型脚本下的延伸安装

2

如果您想了解在特定项目中使用的Typescript版本,请转到package-lock.json文件。你会发现这样的情况:

“打字脚本”:{“版本”:“3.5.3”}
0

截至Visual Studio 2022,有一个新的TypeScript/JavaScript项目类型对于Angular/React/Vue,TypeScript SDK已弃用(但仍可以通过VS安装程序安装,但会发出警告),Visual Studio可能会基于项目使用的TypeScript版本提供IntelliSense和语言支持(净现值法是通过package.json文件指定正在使用的TypeScript版本的首选方法)。

这个答案然而,关于如何控制/识别具体的TypeScript语言版本Visual Studio 2022随时支持。

0

VS代码->资源管理器->package.json->检查依赖项。

在依赖项中查找typescript版本

0

在mac中,您也可以执行此命令。

npm tsc--版本

您的答案

单击“发布您的答案”,表示您同意我们的服务条款并确认您已阅读我们的隐私政策.

不是你想要的答案吗?浏览标记的其他问题问你自己的问题.