2016-12-27 2 views
0

Ich muss alle Dateien injizieren, und die letzten drei, all.css, foo.css und app.min.js neu injizieren, so dass sie zuletzt injiziert werden. Injizieren Aufgabe:Injizieren viele Dateien mit drei spezifischen im unteren

return gulp.src('src/index.html') 
     .pipe(inject(gulp.src(['temp/**/*.css','!temp/**/all.css','!temp/**/foo.css','./temp/**/*.js','!temp/**/app.min.js'], {read: false}), {ignorePath: 'temp'})) 
     .pipe(inject(gulp.src(['temp/**/all.css','temp/**/foo.css,'temp/**/app.min.js'], {read: false}), {ignorePath: 'temp'}))  
     .pipe(gulp.dest('temp')) 
     .pipe(connect.reload()); 
} 

Die Art und Weise, dass ich es gemacht, es überschreibt gerade meine erste Injektion und spritzt nur die zweite.

Antwort

1

Sie müssen einen einzelnen Stream injizieren. Das bedeutet, dass Sie die Dateien aus Ihrem zweiten Stream am Ende des ersten Streams hinzufügen müssen. Das gulp-add-src Paket lässt Sie das tun:

var addSrc = require('gulp-add-src'); 

var files = gulp.src(['temp/**/*.css','!temp/**/all.css','!temp/**/foo.css','./temp/**/*.js','!temp/**/app.min.js'], {read: false}) 
.pipe(addSrc.append(['temp/**/all.css','temp/**/foo.css','temp/**/app.min.js'], {read: false})); 

return gulp.src('src/index.html') 
    .pipe(inject(files, {ignorePath: 'temp'})) 
    .pipe(gulp.dest('temp')) 
    .pipe(connect.reload()); 
Verwandte Themen