ブログ

途中でファイルを追加しても止まらないgulp-watch

こんにちは、やまだです。
私はいつもgulpを使ってsassなどのコンパイルを行なっています。

よくやる失敗は、watchをしながらガツガツ作業を進めている途中、新しくファイルを追加するとファイルをいくら更新しても反映されなくなるということ。
失敗というよりこれはwatchを始めた時には監視下にファイルがなかったため、タスクが実行されていないだけでした。
これはどうにかならないもんかと調べてみたところ、gulp-watchという、まんまのプラグインがあるとのこと。

これを

gulp.task('watch', function() {
    gulp.watch(root.src + 'pug/**/*.pug', ['pug'])
    gulp.watch(root.src + 'sass/**/*.sass', ['sass'])
    gulp.watch(root.src + 'js/**/*.js', ['js'])
});

このようにすると

var watch = require("gulp-watch");

gulp.task("watch", function () {
    watch("./pug/**", function(event){
        gulp.start("pug");
    });
    watch("./sass/**", function(event){
        gulp.start("sass");
    });
    watch("./js/**", function(event){
        gulp.start("js");
    });
});

あら簡単!
これで途中でファイルを追加してもwatchを止めることなく監視してくれるようになりました。
地味に嬉しい、ちょっとしたTIPSでした。

今回、私の環境はgulpはv3だったのですが、v4だとこちら改善されてるとかなんとか、、、
アップデートはしっかりと行なっていけませんね。また試したら更新したいと思います。