我想从我的js文件夹中排除控制器目录,并将控制器文件js保持在dist文件夹中的相同条件。
示例:
JS /控制器/顺序/ controller.js
JS /控制器/项目/控制器….
使用regex从concat任务中排除控制器。您可以编写另一个任务来将控制器复制到dist文件夹。
欲了解更多信息: https://www.npmjs.com/package/gulp-copy
当然你可以使用正则表达式,如果你想使用pimp你的任务 gulp.parallel 哪里有可能。
gulp.parallel
您可以使用取消的blob排除控制器文件夹:
# example structure src |--gulpfile.js | |--include | |-- index.js | `-- another.js | `--exclude `-- exclude.js
然后在你的gulp文件中:
#gulpfile.js const gulp = require('gulp'); const merge = require('merge-stream'); const concat = require('gulp-concat'); gulp.task('js', function() { const copy = gulp.src('./src/exclude/**/*.js') .pipe(gulp.dest('./dist/js')) const build = gulp.src(['./src/**/*.js', '!./src/exclude/**/*.js']) .pipe(concat('concat.js')) .pipe(gulp.dest('./dist/js')) return merge(copy, build); });
或者,如果您不希望它们在一个任务中:
const gulp = require('gulp'); const concat = require('gulp-concat'); gulp.task('concatJs', function() { return gulp.src(['./src/**/*.js', '!./src/exclude/**/*.js']) .pipe(concat('concat.js')) .pipe(gulp.dest('./dist/js')) }); gulp.task('copyJs', function() { return gulp.src('./src/exclude/**/*.js') .pipe(gulp.dest('./dist/js')) }) gulp.task('js', ['concatJs', 'copyJs']);
结果:
dist `--js |--concat.js `--exclude.js