web-dev-qa-db-fra.com

ESLint ignore la règle spécifique pour un répertoire spécifique

Est-il possible avec ESLint d’ignorer une règle spécifique pour un répertoire entier?

Dans mon cas, je voudrais ignorer import/prefer-default-export pour un répertoire nommé commonComponents

31
Kevin Amiranoff

configuration ESLint (.eslintrc) fichiers sont hiérarchiques:

ESLint les recherchera automatiquement dans le répertoire du fichier à lier, puis dans les répertoires parents successifs jusqu'au répertoire racine du système de fichiers. Cette option est utile lorsque vous souhaitez différentes configurations pour différentes parties d'un projet ou que vous souhaitez que d'autres personnes puissent utiliser directement ESLint sans avoir à mémoriser la transmission du fichier de configuration.

Vous pouvez désactiver le import/prefer-default-export règle pour le répertoire commonComponents en créant un fichier .eslintrc fichier avec le contenu suivant dans ce répertoire:

{
    "rules": {
        "import/prefer-default-export": "off"
    }
}
67
cartant

Vous pouvez également utiliser la touche "overrides" pour déclarer des règles pour différents modèles globaux.

Ayez une lecture de Configuration basée sur les modèles Glob

Parfois, une configuration mieux contrôlée est nécessaire, par exemple si la configuration des fichiers d'un même répertoire doit être différente. Par conséquent, vous pouvez fournir des configurations sous la clé de remplacement qui ne s'appliqueront qu'aux fichiers qui correspondent à des modèles globaux spécifiques, en utilisant le même format que celui utilisé pour la ligne de commande (par exemple, app/**/*. Test.js).

J'utilise ceci pour enlever le no-unused-expressions règle de mes fichiers de test comme tel;

"overrides": [{
  "files": [ "*.spec.js" ],
  "rules": {
    "no-unused-expressions": 0
  }
}]
19
Patrick

Si vous souhaitez appliquer vos règles à plusieurs répertoires, vous pouvez créer différentes configurations à des fins différentes. Par exemple:

  • .eslintrc.json pour la configuration commune
  • .eslintrc-main.json pour les peluches principales et la course eslint -c .eslintrc-main src test
  • .eslintrc-comp.json pour les composants et exécuter eslint -c .eslintrc-comp commonComponents fooBarComponent
3
tibalt