我需要一些帮助。
如何将文件从不同的文件夹移动到一个文件夹,而没有Gulp中的子文件夹?
例如我的项目结构:
build/
js/
source/
/modules
/list
- list.js
/editor
- editor.js
/menu
- menu.js
我需要将所有js文件从source移动到build / js:
build/
/js
- list.js
- editor.js
- menu.js
我有代码:
gulp.task('build-partials', function(){
gulp.src('source/modules/*/*.js', {base: 'source/modules/'})
.pipe(gulp.dest('build/js/'))
});
但是在build / js / i中看到了这个:
build/
/js
/list
- list.js
/editor
- editor.js
/menu
- menu.js
答案 0 :(得分:2)
尝试使用gulp-flatten
var flatten = require('gulp-flatten');
gulp.task('scripts', function () {
gulp.src(['source/modules/**/*'])
.pipe(flatten())
.pipe(gulp.dest('build/js/'));
});
答案 1 :(得分:0)
您可以使用gulp-nosubfolders:https://www.npmjs.com/package/gulp-nosubfolders
var nosubfolders = require('gulp-nosubfolders');
gulp.task('default', function() {
return gulp
.src('./js/**')
.pipe(nosubfolders())
.pipe(gulp.dest('./my/dest/path'));
});
答案 2 :(得分:-1)
请尝试使用gulp-concat
。您的代码将如下所示:
var concat = require('gulp-concat');
gulp.task('scripts', function() {
// List all source files in array
return gulp.src(['source/modules/*/*.js'])
.pipe(concat('all.js'))
.pipe(gulp.dest('build/js/'));
});
详细了解NPM module page。