错误:Typescript 1.5 特性。当前语言级别为 1.4。

108

我正在使用带Resharper的Visual Studio 2015进行工作,并引用了一个NodeJS的TypeScript定义文件。我有3个其他的VS项目在使用node.d.ts没有问题。然而,在这个新项目中,我现在有146个错误,都说同样的事情:

"Typescript Feature 1.5. 当前语言级别为1.4"。

但我无论如何也想不出如何告诉Visual Studio(或Resharper?)使用最新的TypeScript语言版本。

我已经尝试过:工具 > 选项 > TypeScript > 项目 > 常规 > ECMAScript6(选中),但它并没有起作用。

还有:

npm install -g typescript

而且它也没有很好地发挥作用。

我该如何告诉VS使用Typescript 1.5.3(node.d.td正在要求)?


1
这个回答有帮助吗?链接 - Sunil D.
谢谢提供链接。看起来很有前途,但是我无法解决问题。我打开了两个VS项目。一个可以引用node.d.ts文件,没有问题,另一个却无法引用。非常奇怪。 - brando
不确定,但可能与VS 2015中的错误有关 http://stackoverflow.com/questions/32273429/cannot-compile-modules-unless-the-module-flag-is-provided/32274106#32274106? - Artiom
你可能是对的,Artiom。据我所知,在Visual Studio 2015 Community中实际上无法使用ECMAScript 6。也许在VS Code中可以,但不适用于VS Community。例如,一旦引用“Import”,它就会被标记为未针对正确的语言级别。那么...如何针对正确的语言级别? - brando
6个回答

209

这是一个ReSharper的设置。从Visual Studio的菜单栏中,点击ResharperOptionsCode EditingTypeScriptInspections,然后将TypeScript语言级别更改为相关值。


54

我找到了解决方法。 首先,如果你在使用Resharper, 就像其他人提到的一样,你需要指定你正在使用的TypeScript版本:

这是图片描述

但是,在Visual Studio中,你需要去 工具/扩展和更新 并将TypeScript扩展升级到最新版本。
这是图片描述

通过在“已安装”选项卡下搜索“typescript”来执行此操作。 在我突出显示的黄色框中,你应该看到一条消息,说任何可用的更新都可以在“更新”选项卡下获取。 转到“更新”选项卡并将你的TypeScript扩展更新到最新版本。(我已经进行了更新,因此无法再次选择Typescript进行更新)。

更新:
最简单的方法是下载并安装“Visual Studio的TypeScript”,以获取最新版本:https://www.microsoft.com/en-us/download/details.aspx?id=48593


9

有点跑题,但是我在寻找解决“ECMAScript 6 feature. Your current language level is: ECMAScript 5”错误的方法时找到了这个帖子...

我想在Antons关于ES6和Resharper 10的评论中添加一条注释。

如果您遇到“ECMAScript 6 feature. Your current language level is: ECMAScript 5”错误,可以按照这篇文章中所述,在Resharper 9.1中更改级别。

我现在正在运行9.2,并刚刚进行了此操作。 Resharper选项> Javascript >检查>“将Javascript语言级别更改为ES6”


完全不是离题 - 非常有帮助。需要注意的是,JSTS检查都需要设置为所需的值。我错过了JS检查设置。 - atconway
请查看我的评论,针对“ECMAScript 6”功能的另一个版本设置。您当前的语言级别是:“ECMAScript 5”错误。 - TheScoobs
我遇到了错误“ECMAScript 2015 特性。您当前的代码级别为:ECMAScript 5。”这对我来说是正确的解决方案。(在此记录下来,希望能帮助其他人更快地通过谷歌找到答案!) - Brian Lacy

1

0

在VS 2019中,点击“扩展”->搜索“Typescript 3.8 for VS”,点击安装,重启VS, 然后VS/ReSharper将会识别Typescript 3.8的功能。在项目文件中使用“Latest”是一个聪明的方式。


-1
请确保在您的项目XML中设置了正确的版本。请参见以下节点:
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
  <TypeScriptTarget>ES6</TypeScriptTarget>
  <TypeScriptJSXEmit>None</TypeScriptJSXEmit>
  <TypeScriptCompileOnSaveEnabled>True</TypeScriptCompileOnSaveEnabled>
  <TypeScriptNoImplicitAny>False</TypeScriptNoImplicitAny>
  <TypeScriptModuleKind>CommonJS</TypeScriptModuleKind>
  <TypeScriptRemoveComments>False</TypeScriptRemoveComments>
  <TypeScriptOutFile />
  <TypeScriptOutDir />
  <TypeScriptGeneratesDeclarations>False</TypeScriptGeneratesDeclarations>
  <TypeScriptNoEmitOnError>True</TypeScriptNoEmitOnError>
  <TypeScriptSourceMap>True</TypeScriptSourceMap>
  <TypeScriptMapRoot />
  <TypeScriptSourceRoot>~/app/</TypeScriptSourceRoot>
  <TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
</PropertyGroup>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接