gulp 遍历 json 对象
gulp loop over json object
我在项目顶部定义了所有路径,
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/'));
});
定义路径没有帮助。 'best practice' 循环任务的方法是什么?
谢谢
我使用
完成了这个
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'));
});
});
我在项目顶部定义了所有路径,
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/'));
});
定义路径没有帮助。 'best practice' 循环任务的方法是什么?
谢谢
我使用
完成了这个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'));
});
});