Gulp循环监视任务

时间:2018-03-04 07:42:04

标签: javascript gulp gulp-watch gulp-uglify

我是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文件时,我的任务会无缘无故地开始循环,文件也会被缩小并合并。为什么?它应该在一次执行后停止!

例如: enter image description here

*此代码在没有监视任务的情况下完美运行

任何帮助?

1 个答案:

答案 0 :(得分:3)

您的目标文件与源文件的掩码匹配。

所以Gulp处理它刚刚生成的文件。然后又一次又一次。

更新:您已在minify-js任务中排除了该文件,但未在watch任务中排除。设置watch参数与minify-js相同,这应该有所帮助。