也许这是显而易见的,但我到处检查(除了正确的地方),谷歌它。什么都没有。


当前回答

你可以做npm list | grep typescript,如果它是通过npm安装的。

其他回答

As far as I understand VS has nothing to do with TS installed by NPM. (You may notice after you install TS using NPM, there is no tsc.exe file). VS targets only tsc.exe installed by TS for VS extension, which installes TS to c:\Program Files (x86)\Microsoft SDKs\TypeScript\X.Y. You may have multiple folders under c:\Program Files (x86)\Microsoft SDKs\TypeScript. Set TypeScriptToolsVersion to the highest version installed. In my case I had folders "1.0", "1.7", "1.8", so I set TypeScriptToolsVersion = 1.8, and if you run tsc - v inside that folder you will get 1.8.3 or something, however, when u run tsc outside that folder, it will use PATH variable pointing to TS version installed by NPM, which is in my case 1.8.10. I believe TS for VS will always be a little behind the latest version of TS you install using NPM. But as far as I understand, VS doesnt know anything about TS installed by NPM, it only targets whateve versions installed by TS for VS extensions, and the version specified in TypeScriptToolsVersion in your project file.

打开一个(普通的,不是VS)命令提示符或PowerShell提示符。

tsc.exe - v tsc。cmd - v tsc - v

如果你安装了相同版本的TypeScript for Visual Studio并使用npm,以上三个命令的输出应该是相同的。

如果没有,请检查System PATH,查看在路径层次结构中的位置以及列出了哪个typescript目录。对于PowerShell用户,简单的方法是: $env:path split ';'

注意不要在System PATH变量中列出任何TypeScript目录或多个TypeScript目录。截至2017年6月9日,我的系统路径看起来是这样的(只有顶部的部分,在这种情况下这是最重要的): Ps >$env:path -split ';' C:\Windows\system32 C:\Windows C:\Windows\System32\Wbem C:\Windows\System32\ WindowsPowerShell \ \ v1.0 C:\Program Files (x86)\Microsoft sdk \TypeScript\2.3 C: \ nodejs \ C:\Users\ {username} \ AppData \ \ npm徘徊

注意,PATH中只包括2.3目录,而不是多个版本。

基于basarat的响应,我在这里给出了更多关于如何在Visual Studio 2013中运行它的信息。

进入Windows开始按钮->所有程序-> Visual Studio 2013 -> 打开Visual Studio Tools窗口,并显示工具列表。

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

(更新)

如果你把你的Visual Studio更新到Typescript的新版本1.0。你在这里看不到最后的版本。查看最后的版本:

转到:C:\Program Files (x86)\Microsoft SDKs\TypeScript,在那里你会看到类型为0.9,1.0 1.1的目录 输入您拥有的较大的数字(在本例中为1.1) 复制目录并在CMD中运行tsc -v命令,您将得到 的版本。

注意:Typescript 1.3 install在目录1.1中,因此运行命令来了解你安装的最后一个版本是很重要的。

注意:有可能您已经安装了1.3版本,而您的代码使用1.0.3。为了避免这种情况,如果你的Typescript在一个单独的项目(s)卸载项目,看看Typescript标签:

<TypeScriptToolsVersion>1.1</TypeScriptToolsVersion> 

设置为1.1。

(更新2)

TypeScript版本1.4,1.5 ..1.7安装在1.4,1.5…1.7的目录。他们不是问题的发现版本。如果你在一个单独的项目中有typescript,并且你从以前的typescript迁移,你的项目继续使用旧版本。要解决这个问题:

卸载项目文件并将typescript版本更改为1。x:

  <TypeScriptToolsVersion>1.x</TypeScriptToolsVersion>

如果使用visual studio安装文件安装typescript,那么新的typescript编译器的路径应该自动更新为指向1。x目录。如果你有问题,检查你的环境变量Path包含

C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.x\

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

在命令提示符中,只需输入以下命令的1,然后按Enter:

tsc - v 或 tsc - version 或 tsc -版本

注意:请确保已将Typescript添加到环境变量path中 执行命令前,请先查看:如何设置环境 变量。

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

更新(2017年6月):

VS 2013没有显示这个信息。(稍后注意:VS 2017企业版也不显示此信息)。 VS使用Microsoft Build Engine (MSBuild)编译Typescript文件。MSBuild可以支持几个主要的Typescript版本,但是About窗口只显示最新的版本。

下面是深入了解问题的方法:

A.要检查Visual Studio/MSBuild安装了哪些版本的Typescript,请检查C:\Program Files (x86)\Microsoft sdk \ Typescript文件夹的内容。例如,我有1.0、1.8和2.2版本:

B.检查你的项目需要哪个版本的Typescript。在*。在csproj文件中,寻找<TypeScriptToolsVersion>标签,或者如果它没有,你可以添加它,就像这样

< PropertyGroup > ... < TypeScriptToolsVersion > 1。8 < / TypeScriptToolsVersion > ... < / PropertyGroup >

C.最后,你可以检查MSBuild实际使用的Typescript版本。在TOOLS |选项|项目和解决方案|构建和运行中将MSBuild项目输出详细信息设置为详细信息:

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