注入许多文件,底部有三个特定的文件

injecting many files with three specific at bottom

我需要注入所有文件,并重新注入最后三个文件,all.css、foo.css 和 app.min.js 所以它们最后注入。 注入任务:

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());
}

我做的方式,它只是覆盖了我的第一次注射而只注射了第二次。

您需要注入单个流。这意味着您需要将第二个流中的文件添加到第一个流的末尾。 gulp-add-src 包让你这样做:

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());