2015-05-19 6 views
15

transpile So habe ich dies in meinem gruntfile:Wie Setup Grunzen-babel ein ganzes Verzeichnis

gruntConfig.babel = { 
     options: { 
      sourceMap: true 
     }, 
     dist: { 
      files: { 
       "dist/server.js": "src/*.js" 
      } 
     } 
    }; 

Dies korrekt alle js Dateien in src transpiles, aber es überschreibt dist/server.js jedes Mal.

Das muss wirklich einfach sein, aber ich kann nicht herausfinden, wie man es in verschiedene Ausgabedateien schreibt, eine für jede Quelldatei.

+0

Das ist super ärgerlich und offensichtlich nicht etwas, jemand würde wollen eh und je. Und geht es nicht gegen das Standard-Grunt-Verhalten? Vielleicht bin ich blöd, aber laut den Grunt-Dokumenten sollte das obige zu einer verketteten Datei führen, und das ist es, was ich im Moment schwer erreiche. –

+1

eine kleine Korrektur: afaik, dies wird nicht "alle js-Dateien in src" transpilieren, es wird nach dem ersten aufhören. – pgpv

Antwort

24

Es kann mit dynamic files mapping erreicht werden.

Für Ihren Fall Config wird wie folgt aussehen:

gruntConfig.babel = { 
    options: { 
     sourceMap: true 
    }, 
    dist: { 
     files: [ 
      { 
       expand: true, 
       cwd: 'src/', 
       src: ['*.js'], 
       dest: 'dist/' 
      } 
     ] 
    } 
}; 
+0

Erhält dies nicht die Struktur von 'src /', anstatt in 'dist /' zu verketten? – tandrewnichols

+0

"Preserve" nicht "Preserver". . . thank stack overflow für die Ablehnung von Kommentaränderungen nach 5 Minuten. – tandrewnichols

Verwandte Themen