我是Gulp的新手,这是我的代码,只是缩小了我的JS脚本:
gulp.task('minify-js', function(){
return gulp.src(['assets/js/**/*.js', '!assets/js/**/*.min.js'])
.pipe(uglify())
.pipe(rename({ suffix: '.min' }))
.pipe(gulp.dest('./assets/js'))
});
gulp.task('watch', function(){
//gulp.watch(['sass/**/*.sass'], gulp.series('css-files'));
gulp.watch(['assets/js/**/*.js'], gulp.series('minify-js'));
});
gulp.task('default', gulp.series('watch'));
当我运行gulp default
并编辑任何JS
文件时,我的任务会无缘无故地开始循环,文件也会被缩小并合并。为什么?它应该在一次执行后停止!
*此代码在没有监视任务的情况下完美运行
任何帮助?
答案 0 :(得分:3)
您的目标文件与源文件的掩码匹配。
所以Gulp处理它刚刚生成的文件。然后又一次又一次。
更新:您已在minify-js
任务中排除了该文件,但未在watch
任务中排除。设置watch
参数与minify-js
相同,这应该有所帮助。