1

我在项目顶部定义了所有路径,

var paths = {
  scripts: ['./js/main.js', './js/datetimepicker.js'],
  styles: ['./stylesheets/style.scss', './stylesheets/datetimepicker/datetimepicker.css', './stylesheets/vis/vis.css'],
  images: ['img/**/*'],
  libs: ['./js/*.min.js', './img/*', './fonts/FontAwesome/*'],
  compress: ['./css/**', './fonts/FontAwesome/**', './img/**', './js/main.min.js', './js/bootstrap.min.js'],
  concat: [{
    'src': './web-src/js/services*.js',
    'name': 'services.js'
  }]
};

我的问题是,当我打电话时,paths.concat[0].src我被迫指定我想要的数组中的索引。所以当我调用我的 concat 任务时,

gulp.task('concat', function () {
  return gulp.src(paths.concat[0].src)
    .pipe(concat(paths.concat[0].src))
    .pipe(gulp.dest('./dist/'));
});

定义路径没有帮助。循环任务的“最佳实践”方式是什么?

谢谢

4

1 回答 1

2

我完成了这个使用,

gulp.task('concat', function () {
    return paths.concat.forEach(function(obj) {
        return gulp.src(obj.src)
            .pipe(concat(obj.name))
            .pipe(rename(function (path) {
                path.basename += '.min';
                return path;
            }))
            .pipe(gulp.dest('./web/js'));
    });
});
于 2015-12-31T21:11:08.397 回答