在一项任务中吞噬多个来源

时间:2015-10-25 13:57:51

标签: gulp gulp-sass

在我的项目结构中,我有用于开发的app文件夹,我想将.html文件和/ css的内容移动到名为/ dist的上面的文件夹中。

在我的gulp任务中,我尝试了这个:

gulp.task('prod', function() {
  gulp.src('app/*.html')
    .pipe(gulp.dest('dist'))
  gulp.src('app/css/*.css')
    .pipe(gulp.dest('dist/css'))
});

这没有用。唯一的方法是创建两个不同的任务:

gulp.task('prod_html', function() {
  return gulp.src('app/*.html')
    .pipe(gulp.dest('dist'))
});

gulp.task('prod_css', function() {
  return gulp.src('app/css/*.css')
    .pipe(gulp.dest('dist/css'))

});

但这似乎是最终创造不同任务的不良做法;一个用于html文件,然后用于/ css和/ js和/ images

欢呼声 苏海尔

1 个答案:

答案 0 :(得分:1)

我最终使用merge-stream :)

npm install --save-dev gulp merge-stream

然后:

var merge = require('merge-stream');

gulp.task('prod', function() {
  var html = gulp.src('app/*.html')
    .pipe(gulp.dest('dist'))

  var css = gulp.src('app/css/*.css')
    .pipe(gulp.dest('dist/css'))

  return merge(html, css);
});

并输入我的默认任务:)