我在Visual Studio 2015(使用Resharper)的上下文中工作,并且正在引用NodeJS的TypeScript定义文件。我有3个其他VS项目使用node.d.ts
没有问题。然而,在这个新项目中,我现在有146个错误说同样的事情:
"打字稿特征1.5。目前的语言水平是1.4"。
对于我的生活,我无法弄清楚如何告诉Visual Studio(或Resharper?)使用最新的TypeScript语言版本。
我尝试过:工具>选项>打字稿>项目>一般> ECMAScript6 (已选中)但它没有工作。
此外:
npm install -g typescript
它也不起作用。
如何告诉VS使用Typescript 1.5.3(node.d.td
要求的话)?
答案 0 :(得分:185)
这是ReSharper设置。在Visual Studio的菜单栏中,点击Options
→Code Editing
→TypeScript
→Inspections
→TypeScript language level
,然后将{{1}}更改为相关值。
答案 1 :(得分:45)
我发现了如何解决这个问题。首先,如果您正在使用Resharper,正如其他人所提到的那样,您需要指出您正在使用的打字稿的版本:
但是,在Visual Studio中,您需要转到工具/扩展和更新,并将Typescript扩展程序升级到最新版本。
通过在“已安装”选项卡下搜索“typescript”来执行此操作。在我突出显示的黄色框中,您应该看到一条消息,指出“更新”选项卡下有任何可用的更新。转到“更新”选项卡,将您的打字稿扩展名更新为最新版本。 (我已经进行了更新,因此我现在无法使用Typescript进行更新选择)。
更新:
最简单的方法是下载并安装“Typescript for Visual Studio”以获取最新版本:https://www.microsoft.com/en-us/download/details.aspx?id=48593
答案 2 :(得分:9)
有点偏离主题但是因为我在寻找错误“ECMAScript 6功能的解决方案时找到了这个线程。你当前的语言水平是:ECMAScript 5”......
我想补充一篇关于Antons关于ES6和Resharper 10的评论的说明。
如果您收到错误“ECMAScript 6功能。您当前的语言级别为:ECMAScript 5”,则可以按照此帖How to use ECMAScript 6 syntax with Visual Studio 2013中所述更改Resharper 9.1中的级别
我现在正在运行9.2而且只是这样做了。 Resharper选项> Javascript>检查> “将Javascript语言级别更改为ES6”
答案 3 :(得分:1)
现在有一个适用于Visual Studio 2015的TypeScript 1.5。请在https://blogs.msdn.microsoft.com/typescript/2015/07/20/announcing-typescript-1-5/
获取它实际上适用于VS 2013,但它们强烈暗示它也适用于2015:“TypeScript 1.5是新发布的Visual Studio 2015的一部分。”
答案 4 :(得分:0)
VS 2019,单击扩展->为VS搜索Typescript 3.8,单击安装,重新启动VS, VS / ReSharper将识别Typescript 3.8的功能。在项目文件中,最新使用“最新”是一种聪明的方法。
答案 5 :(得分:-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>