ESLint: comment définir.eslintrc pour reconnaître "require"?

, je suis nouveau sur ESLint, et j'ai réussi à intégrer ESLint avec IntelliJ.

Hors de la boîte, mon intégration D'ESLint n'a pas reconnu node, mais l'examen de base de la documentation a clairement indiqué qu'en créant le fichier de configuration nommé .eslintrc à la racine de mon dossier de projet (avec le paramètre IntelliJ approprié pour accéder à ce fichier) et le paramètre "node":true, ESLint reconnaît node (c'est-à-dire que

// Contents of .eslintrc at root of project - support for Node and jQuery
{
  "env" : {
    "node" : true,
    "jquery" : true
  },
}

Cependant, ESLint ne reconnaît toujours pas require(), comme en témoigne cette capture d'écran:

ESLint ne reconnaît pas require()

J'ai fait de mon mieux dans un délai raisonnable à la recherche d'une solution à la question fondamentale de savoir comment faire reconnaître ESLint require(). En particulier, j'ai trouvé un indice possible ici , où il a suggéré d'ajouter "amd":false dans (je suppose) le fichier .eslintrc - mais pas aller.

Cela semble basique. Comment puis-je obtenir .eslintrc reconnaître require()?

(Si, dans votre réponse, vous pouvez fournir un aperçu de la façon de couvrir des cas plus généraux, ce serait également utile. Merci!)

21
demandé sur Splaktar 2015-06-17 23:08:31

3 réponses

Le problème n'est pas avec ESLint. Si vous regardez attentivement votre message, il dit JSHint .

Puisque vous essayez de configurer ESLint, la solution la plus simple serait de désactiver ou de supprimer le plugin JSHint de votre IDE.

Si vous voulez toujours utiliser JSHint avec ESLint, vous pouvez faire ce qui suit:

Fichier Unique solution: ajoutez /* global require */ en haut de votre fichier.

Solution Générale pour tous les fichiers: ajouter "node": true ligne à votre .jshintrc.

17
répondu Marko Grešak 2015-06-17 20:26:32

Ajout de amd à env dans .eslintrc va vous permettre d'utiliser define() et require(), comme par le amd spec:

{
  "env": {
    "amd": true
  }
}
36
répondu Nick Avi 2017-11-10 07:41:17

"amd": vrai dans env définit require () et define() en tant que variables globales selon la spécification amd.

Voir http://eslint.org/docs/user-guide/configuring#specifying-environments

2
répondu Fabio Marasco 2017-04-20 15:04:44