2015-05-24 7 views
6

Ich versuche, meine JS-Dateien zu verketten und sie durch Babel für ein neues Projekt laufen zu lassen, aber anstatt die Zieldatei bei jeder Aufgabe zu überschreiben, hängt meine gulpdatei nur Änderungen an der Datei an. So sieht meine Zieldatei so aus:Gulp an Dateien anhängen, nicht überschreiben

console.log('hello'); 

//# sourceMappingURL=app.js.map 
console.log('goodbye'); 

//# sourceMappingURL=app.js.map 

Was vermisse ich? Unten ist mein gulpfile.

Vielen Dank im Voraus.

var gulp  = require('gulp'); 
var sourcemaps = require("gulp-sourcemaps"); 
var uglify  = require('gulp-uglify'); 
var rename  = require('gulp-rename'); 
var concat  = require('gulp-concat'); 
var babel  = require('gulp-babel');  
var browserSync = require('browser-sync').create(); 
var reload  = browserSync.reload; 

gulp.task('js', function(){ 
    return gulp.src("./app/js/*.js") 
    .pipe(sourcemaps.init()) 
    .pipe(concat("app.js")) 
    .pipe(babel()) 
    .pipe(sourcemaps.write(".")) 
    .pipe(gulp.dest("./app/js/")); 
}); 

gulp.task('js-reload', ['js'], reload); 

gulp.task('serve', ['js'], function() { 
    browserSync.init({ 
     server: "./app" 
    }); 
    gulp.watch("./app/js/*.js").on('change', ['js-reload']); 
    gulp.watch("./app/*.html").on('change', reload); 
}); 

gulp.task('default', ['js', 'serve']); 
+0

Wenn ich mich richtig erinnere, müssen Sie '. /' Hinzufügen, um Dateien zu überschreiben. –

Antwort

1

Sie lesen und schreiben in dasselbe Zielverzeichnis. Daher wird zuerst die Datei app.js gelesen, ein paar Sachen dazu hinzugefügt und dann wird das Ergebnis in app.js geschrieben, was dieses anhängende Verhalten verursacht. Sie sollten in ein anderes Verzeichnis ausgeben, als Sie gerade lesen.