3
votes

package.json et extension glob Eslint

Mon package.json est ci-dessous. Comment le mettre à jour pour que eslint s'exécute sur: les répertoires

src et test

pour

Fichiers .js et .jsx uniquement? Pour le moment, le caractère générique * inclut .json, ce que je ne veux pas.

package.json

{
...

"lint": "eslint {src/**/*.js*,test/**/*.js*}

...
}


0 commentaires

3 Réponses :


2
votes

Je pense que vous devez troquer la brièveté pour la spécificité ici:

{
...

"lint": "eslint {src/**/*.js,src/**/*.jsx,test/**/*.js,test/**/*.jsx}"

...
}


1 commentaires

Marqué ceci comme la réponse pour l'instant, ce serait bien s'il y avait une méthode plus concise. Mais ça marche



0
votes

Voici ce que j'utilise pour exécuter eslint sur un répertoire:

"lint": "node_modules/.bin/eslint --ext js --ext jsx src"

Je pense que vous pouvez simplement ajouter le répertoire test à la fin après src pour faire les deux. Plus d'informations ici


2 commentaires

Et si j'ai 2 dossiers, src et test


Je pense que vous pouvez simplement ajouter le répertoire test à la fin après src pour faire les deux. Vous trouverez plus d'informations ici



2
votes

Vous pouvez lire dans la documentation eslint :

Veuillez noter que lorsque vous passez un glob comme paramètre, il sera développé par votre shell. Les résultats de l'extension peuvent varier en fonction de votre shell et de sa configuration. Si vous souhaitez utiliser la syntaxe node glob, vous devez citer votre paramètre (en utilisant des guillemets doubles si vous en avez besoin pour s'exécuter sous Windows), comme suit:

Il serait donc conseillé d'utiliser des guillemets doubles. Une fois que vous utilisez des guillemets doubles (qui doivent être échappés dans la chaîne json), vous pouvez légèrement modifier votre modèle, par exemple

{
...

"lint": "eslint \"{src,test}/**/*.{js,jsx}\""

...
}

Testez en utilisant globster.xyz (globster.xyz nécessite / au début mais eslint ne bien sûr pourquoi ...)

Il y a généralement plus d'une façon de réaliser ce que vous voulez mais je pense que ce serait la plus concise.


0 commentaires