2014-09-07 1 views
13

단일 작업에서 여러 꿀꺽 꿀꺽 소리를 처리하는 방법을 이해하는 데 어려움이 있습니다. 이 같은 작업에서는 :하나의 작업에서 복수의 덤프 명령을 수행하는 방법

gulp.task('task1', function (cb) { 
    gulp.src('src/js/**/*').pipe(gulp.dest('dist')); 
    gulp.src('src/css/**/*').pipe(gulp.dest('dist')); 
    ... 
}); 

나는 모든 다른 소스 파일을 처리하고자하고 다른 작업은 그것의 완료에 따라 달라질 수 있습니다 누른 후 마무리 작업을 표시합니다.

각 소스마다 개별 작업을 사용하는 것이 가능하다는 것을 알고 있지만 실제로는 개별적으로 필요하지 않은 엄청난 수의 작업으로 모든 것을 복잡하게 만들고 오케스트레이션을 부풀게 만듭니다.

답변

28

모든 파일에 동일한 작업을 수행하는 경우 glob 배열을 gulp.src으로 전달할 수 있습니다. 예 :

gulp.task('task1', function() { 
    return gulp.src(['src/js/**/*', 'src/css/**/*']).pipe(gulp.dest('dist')); 
}); 

오케스트레이터가 작업 완료 시점을 알 수 있도록 스트림을 반환해야합니다.

당신이 파일의 다른 세트에 다른 일을하는 경우, 당신은 하나의 작업에서 다음과 같이 스트림을 병합 할 수 있습니다 :

var es = require('event-stream'); 
gulp.task('fancy-task', function() { 
    return es.merge(
     gulp.src('*.js').pipe(some-js-plugin()), 
     gulp.src('*.css').pipe(some-style-plugin)) 
     .pipe(gulp.dest('dist')); 
}); 
+3

물론 : 병합 스트림을. 나는 생각 했어야했다. – doberkofler

+1

다른 파일 세트에 대해 다른 대상을 원하면 어떻게해야합니까? –

+0

병합이 예상대로 작동 할 각 스트림에'gulp.dest'를 넣을 수 있습니다. –