web-dev-qa-db-fra.com

Babel ignore plusieurs annuaires

J'utilise actuellement Babel avec une commande simple:

$ babel . --ignore node_modules --out-dir dist

Mais je ne trouve pas le moyen d'ignorer plusieurs répertoires (node_modules, test), j'ai essayé beaucoup de choses, y compris (dans .babelrc):

  "ignore": "node_modules"
  "ignore": "/node_modules/"
  "ignore": "node_modules/**"
  "ignore": ["node_modules"]

Ce qui ne marche pas du tout (node_modules sont transpilés). N'y a-t-il pas un moyen simple d'y parvenir (avec Babel 6)?

15
Cohars

Vous devriez pouvoir utiliser des virgules dans la cli

babel . --ignore node_modules,test --out-dir dist

24
hzoo

Notez qu'il existe un bogue connu dans babel, où il ignore only et ignore dans .babelrc.

Le bogue pertinent est T6726 , qui a été corrigé dans Babel 6.14.0

5
Wilfred Hughes

Vous pouvez ignorer plusieurs répertoires et spécifier un modèle globbing dans le fichier .babelrc comme ceci

{
    ...,
    "ignore": [
        "node_modules",
        "dir_2",
        "dir_3/**/*.js"
    ]
}

Référence: https://babeljs.io/docs/en/babelrc

2
Naz

Avec Babel 7, vous devez utiliser un motif Glob:

babel . --ignore */node_modules,*/test --out-dir dist
1
nodkz