Errore: funzione dattiloscritto 1.5. Il livello linguistico attuale è 1.4


102

Sto lavorando nel contesto di Visual Studio 2015 (con Resharper) e sto facendo riferimento a un file di definizioni TypeScript per NodeJS. Ho altri 3 progetti VS che sto usando node.d.tssenza problemi. In questo nuovo progetto, tuttavia, ora ho 146 errori che dicono la stessa cosa:

"Caratteristica dattiloscritto 1.5. Il livello della lingua corrente è 1.4".

Per quanto mi riguarda, non riesco a capire come dire a Visual Studio (o Resharper?) Di utilizzare l'ultima versione in linguaggio TypeScript.

Ho provato: Strumenti> Opzioni> Dattiloscritto> Progetto> Generale> ECMAScript6 (selezionato) e non ha funzionato.

Anche:

npm install -g typescript

e non ha funzionato altrettanto bene.

Come faccio a dire a VS di usare Typescript 1.5.3 (che node.d.tdrichiede)?


1
Fa questa risposta di aiuto?
Sunil D.

Grazie per il collegamento. Sembrava promettente ma non è stato in grado di risolvere il problema. Ho due progetti VS aperti. Uno fa riferimento a node.d. non è un problema, l'altro lo rifiuta. Molto strano.
brando

Non sono sicuro, ma potrebbe essere correlato a un bug in VS 2015 stackoverflow.com/questions/32273429/… ?
Artiom

Potresti avere ragione Artiom. Per quanto ne so, non puoi effettivamente utilizzare ECMAScript 6 nella community di Visual Studio 2015. Forse in VS Code, ma non nella comunità VS. Nel momento in cui fai riferimento, ad esempio, "Importa", viene contrassegnato come non indirizzato al livello di lingua corretto. Allora ... come si targetizza il livello linguistico corretto?
brando

Risposte:


194

È un'impostazione ReSharper. Dalla barra dei menu in Visual Studio, fare clic su ResharperOptionsCode EditingTypeScriptInspections, quindi modificare TypeScript language levelil relativo valore.


48

Ho scoperto come risolvere questo problema. Innanzitutto, se stai usando Resharper, come altri hanno già detto, devi indicare la versione del dattiloscritto che stai usando:

inserisci qui la descrizione dell'immagine

Tuttavia, all'interno di Visual Studio è necessario andare su Strumenti / Estensioni e Aggiornamenti e aggiornare l'estensione Typescript alla versione più recente.
inserisci qui la descrizione dell'immagine

Fallo cercando "dattiloscritto" nella scheda "installato". Nella casella gialla che ho evidenziato dovresti vedere un messaggio che dice che tutti gli aggiornamenti disponibili sono disponibili nella scheda "Aggiornamenti". Vai alla scheda "Aggiornamenti" e aggiorna l'estensione dattiloscritto alla versione più recente. (Avevo già effettuato l'aggiornamento, quindi nessuna selezione di aggiornamento è ora disponibile per Typescript).

AGGIORNAMENTO:
è più semplice scaricare e installare "Typescript for Visual Studio" per ottenere l'ultima versione: https://www.microsoft.com/en-us/download/details.aspx?id=48593


9

Un po 'fuori tema, ma da quando ho trovato questo thread cercando una soluzione all'errore "Funzione ECMAScript 6. Il tuo livello di lingua attuale è: ECMAScript 5" ...

Voglio aggiungere una nota sul commento di Antons su ES6 e Resharper 10.

Se viene visualizzato l'errore "Funzionalità ECMAScript 6. Il tuo livello di lingua corrente è: ECMAScript 5" è possibile modificare il livello in Resharper 9.1 come indicato in questo post Come utilizzare la sintassi di ECMAScript 6 con Visual Studio 2013

Ora sto usando la 9.2 e l'ho appena fatto. Opzioni di riaffilatura> Javascript> Ispezioni> "cambia il livello di lingua Javascript in ES6"


Per niente fuori tema, molto utile. E 'importante notare che sia le JSe TSispezioni devono entrambi essere impostati ai loro valori desiderati. Mi mancava l' JSimpostazione dell'ispezione.
atconway

Si prega di consultare il mio commento su un'impostazione di versione aggiuntiva per la funzione "ECMAScript 6. Il tuo livello di lingua corrente è: ECMAScript 5" errore.
Stephen Baker

Ricevo l'errore " Funzionalità ECMAScript 2015. Il tuo livello di codice attuale è: ECMAScript 5. " Questa era la soluzione corretta per me. (Annotato qui per sperare di aiutare gli altri a cercare su Google la risposta più rapidamente!)
Brian Lacy


-1

Assicurati di impostare la versione corretta nell'XML del progetto. Vedi il nodo qui sotto:

<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>
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.