2016-12-27 7 views
0

모든 파일을 주입하고 마지막 세 개의 all.css, foo.css 및 app.min.js를 다시 주입하여 마지막으로 주입해야합니다. 주입 작업 :맨 아래쪽에 3 개의 특정 파일이 많이있는 파일을 삽입하는 경우

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

내가 그것을 만든 방법은, 그냥 내 첫 번째 주사를 무시하고 단지 두 번째를 주입한다.

답변

1

단일 스트림을 삽입해야합니다. 즉, 두 번째 스트림의 파일을 첫 번째 스트림의 끝에 추가해야합니다. 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());