我需要从gulpfile中最小化gulp命令的数量。
这是我的JS文件夹
js/
templates/
t-01/
t-02/
[...]
t-xxx/
我的JS(带有livereload)的gulp任务
gulp.task('da-js', function() {
gulp.src([
'js/templates/**/*.js',
'!js/templates/**/*.min.js'
])
.pipe(concat('app.min.js'))
.pipe(gulp.dest('js/templates'))
.pipe(livereload());
});
此任务是全局的,目标文件夹是templates
,但我想检测js文件的当前文件夹,如:
/templates/t-01/
gulp.watch
正在启动app.min.js
仅在此文件夹t-01
我知道目标文件夹gulp.dest
不正确,但我不知道如何执行此操作。
感谢您的帮助:)
答案 0 :(得分:0)
您可以使用gulp的watch
方法监控包含JS文件的文件夹以进行更新,并运行一系列任务以响应某些更改。
gulp.task('watch-files', function() {
gulp.watch('js/templates/**/*.js', ['da-js']);
});
这里我们正在观看模板中的所有JS文件及其所有子文件夹,并为每次更新运行文件串联任务(da-js
)。现在我们正在执行相同的任务,即使您更改app.min.js
,也会在templates
文件夹中生成templates/t-01/some.js
文件夹。
在watch-files
中定义了gulpfile.js
任务后,您只需运行gulp watch-files
命令即可开始监控您的文件。