2016-02-15 11 views
7

Nella fase di compilazione sto utilizzando babel per traspolare il codice in es5 (da src a dist). Come faccio a escludere i file che terminano con .test.js?Make babel esclude i file di test

package.json

"scripts": { 
    "build": "babel src --out-dir dist", 

.babelrc

{ 
    "presets": [ "es2015" ], 
    "ignore": "\\.test\\.js" 
} 
+0

Ho trovato che il babelrc non ha funzionato, ma l'opzione del compilatore in linea ha fatto –

risposta

26

Sulla base della documentazione, si dovrebbe essere in grado di scrivere .bablerc

{ 
    "ignore": [ 
    "**/*.test.js" 
    ] 
} 

Tuttavia, ho potuto verificare che questo non sembra funzionare. L'ho provato con la versione 6.5.1 (babel-core 6.5.2).

Allo stesso tempo, il seguente funziona:

babel src --out-dir build --ignore '**/*.test.js' 

Questo è lo stesso modello di glob come scritto nel file .bablerc. Se installi qualsiasi libreria glob da npm scoprirai che questo schema glob dovrebbe funzionare (è così che l'ho inventato ... Attualmente non uso babel).

+1

Ho provato "**/*. Test.js", "src/**/*. Test.js", "src/index.test. js". Compila ancora 'src \ index.test.js -> dist \ index.test.js' – Manuel

+0

Ho modificato la risposta ... sembra che l'ignora' .bablerc' non sia onorata. Ho notato diverse varianti di questo che sono state segnalate sul loro tracker di problemi github. Provalo tramite il flag della riga di comando '--ignore' e noterai che il pattern glob è onorato. –

+5

Il file dovrebbe essere chiamato .babelrc not .bablerc – crumbletown