VS Code avec es6

104

J'obtiens l'erreur de peluchage dans mon code 'import' is only available in ES6 (use 'esversion: 6').

Tout ce qui concerne es6 génère une erreur. Je ne sais pas ce que je dois configurer pour le faire fonctionner.

erichardson30
la source

Réponses:

216

Ajoutez un fichier nommé .jshintrcà votre projet et à l'intérieur de ce fichier, tapez ceci:

{
    "esversion": 6
}

Comme vous pouvez le voir ici:

entrez la description de l'image ici

La documentation complète des jshintoptions se trouve ici: http://jshint.com/docs/options

Nasreddine
la source
4
jshint.com/docs/options/#esversion pour ceux qui recherchent la documentation.
Jeremy Larter le
5
Cela devrait être ajouté automatiquement.
Xaqron
semble parfois que vous deviez ajouter cette ligne "moz": true
kinsley kajiva
6
Cela n'a pas fonctionné pour moi (vscode version 1.37.1, OS X). Allez dans les préférences de l'extension -> sélectionnez Modifier dans settings.json Pour l'ajout JSON: "jshint.options": { "esversion": 6 } N'oubliez pas la virgule sur la ligne précédente!
sijpkes
1
Le seul endroit pour ajouter cela est ~/settings.jsondans mon expérience. Les paramètres au niveau du projet ne l'affecteront pas. Il est absurde que ce ne soit pas la valeur par défaut. Il est vraiment difficile de trouver comment résoudre ce problème et en attendant, l'expérience utilisateur avec javascript dans VS Code est hostile. Super ennuyeux. Il devrait prendre en charge ES6 + par défaut. Pourquoi pas?
rjurney le
94

Edit: j'ai ajouté un moyen d'activer es6 si vous utilisez ESLint au lieu de JSHint ainsi que de mettre à jour les captures d'écran puisque VSCode a changé depuis ma réponse d'origine.

Méthode JSHint:

Si vous utilisez JSHint, vous pouvez ajouter les éléments suivants à vos paramètres:

"jshint.options":{
    "esversion":6
}

Méthode ESLint:

Si vous utilisez ESLint, vous pouvez ajouter les éléments suivants à vos paramètres:

"eslint.options": {
    "env":{
        "es6":true
    },
    "parserOptions": {
        "ecmaVersion": 6 // or 7,8,9
    }
}

Documentation de configuration ESLint

Comment mettre à jour les paramètres

  1. Dans VS Code, dirigez-vous vers settings

Paramètres du code VS

  1. Lorsque les paramètres s'affichent, vous verrez les sections des paramètres:

Onglets des paramètres utilisateur et espace de travail

Notez qu'il existe deux sections dans lesquelles vous pouvez personnaliser vos paramètres, les paramètres utilisateur et les paramètres de l'espace de travail

Paramètres utilisateur C'est là que vous devez appliquer les paramètres globaux souhaités pour tout projet sur lequel vous travaillerez.

Paramètres de l'espace de travail C'est l'endroit où vous pouvez apporter des modifications de paramètres qui ne doivent être appliquées qu'à votre projet actuel.

Dans mon cas, puisque je sais que seuls certains de mes projets peuvent utiliser ES6, j'ai besoin de l'indication d'erreur pour m'avertir si j'utilise ES6 mes projets non ES6 ... donc je ne le définit que dans mes paramètres d'espace de travail

Mais, si vous savez que tout ce que vous codez dans VS Code sera un projet ES6, enregistrez une étape et ajoutez-la à vos paramètres utilisateur .

  1. Cliquez sur Utilisateur / Espace de travail selon vos préférences. Recherchez JSHint ou ESLint (selon ce que vous utilisez). Cliquez sur l'un des liens Modifier dans settings.json , peu importe lequel.

Modifier dans settings.json

  1. Ajoutez les paramètres pertinents selon que vous utilisez JSHint ou ESLint:

JSHint

Ajout du paramètre JSHint

ESLint

Ajout du paramètre ESLint

Ian
la source
6
C'était une excellente réponse et +1 pour ne pas avoir à créer de fichier supplémentaire dans les répertoires du projet ... Des captures d'écran également très utiles, merci beaucoup!
twknab
C'est aussi mieux car cela peut être fait automatiquement pour les nouveaux projets, au lieu de créer de nouveaux fichiers, ou simplement conservés dans un seul espace de travail.
Jan Sila
2
Cela ne fonctionne pas pour moi pour une raison quelconque. Je l'ai essayé dans les paramètres de l'utilisateur et de l'espace de travail
LondonGuy
1
Merci beaucoup pour une explication détaillée, c'était vraiment très utile.
Ketan Ramteke le
22

Vous pouvez ajouter "esversion": 6à jshint.options dans les paramètres utilisateur.

{
  "jshint.options": {
    "esversion": 6
  }
}
UX Nomaan
la source
4

Juste pour compléter les excellentes suggestions déjà soumises, vous pouvez également définir cela fichier par fichier en ajoutant cette ligne d'échappement (et similaire pour les autres paramètres jshint) en haut de votre fichier.

// jshint esversion:6

En fait, vous pouvez l'ajouter n'importe où, mais cela n'affecte que le code suivant, vous permettant d'activer et de désactiver les paramètres si vous êtes désespéré de faire quelque chose de bizarre.

David Woods
la source
0

Assurez-vous que vous effectuez les configurations ci-dessus avec le json mais supprimez / désactivez également l' jshintextension de l'espace de travail si vous utilisez eslintet vice versa.,

vam
la source
-3

Désactivez votre extension jshint comme ceci:

https://i.stack.imgur.com/mYnM2.png

Mohammad Naderi
la source