80 votes

Comment ajouter manuellement un chemin à résoudre dans eslintrc

J'ai un dossier dans mon projet, main que je suis régler comme un module. Par exemple, import x from 'main/src' des importations main/src/index.js. Ceci est fait grâce à webpack détermination de la configuration de l'alias.

Une question que je vais avoir est de se débarrasser des erreurs via eslint. Je sais eslint fournit un webpack résoudre plugin, cependant, j'ai eu du mal à la faire fonctionner. Je soupçonne que c'est parce que je suis sur webpack 2 et à l'aide de es6 dans mon webpack fichiers de configuration.

Est-il un moyen manuel pour écrire un résoudre paramètre qui résout ce problème pour mon eslint?


La seule autre hack, je l'ai vu à l'œuvre est à l'aide de import/core-modules , mais puis-je avoir la liste de chaque dossier dans l'arborescence de sous-répertoires main/src/bar, main/src/foo. Ce ne serait pas idéal.

175voto

Sota Sugiura Points 894

Je pense que le lien ci-dessous vous aide. Vous pouvez ajouter la résolution de répertoires à l'aide de config.

https://github.com/benmosher/eslint-plugin-import#resolvers

Par exemple, si vous voulez résoudre src/, vous pouvez écrire comme ci-dessous sur l' .eslintrc.

{
  "settings": {
    "import/resolver": {
      "node": {
        "paths": ["src"]
      }
    }
  }
}

Puis ESLint résoudre de répertoire src. Vous pouvez exiger src/hoge/moge.js par la rédaction const moge = require('hoge/moge'); et ESLint le sait.

22voto

johvin Points 71

Trop tard pour voir cette question. En fait, il existe déjà un résolveur nommé eslint-import-resolver-alias qui implémente cette fonctionnalité avec le paramètre ci-dessous.

 {
  settings: {
    'import/resolver': {
      'alias': [
        ['main/src', './main/src']
       ]
     }
  }
}
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X