gulp-webserver の livereload が 2 回走る

  • 9
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

livereload というのは HTML/CSS/JavaScript を変更するとブラウザを自動でリロードしてくれる便利なやつです。

その livereload が少し時間を置いて 2 回走るという現象が起きました。私は CoffeeScript を使っているのですが CoffeeScript を変更したときに livereload が走り、その CoffeeScript が JavaScript にコンパイルされたときにも livereload が走っていたのが原因でした。

livereload が走るファイルの種類をフィルターすることで解決しました。

var gulp = require('gulp');
var webserver = require('gulp-webserver');

gulp.task('webserver', function() {
    gulp.src('app')
        .pipe(webserver({
            livereload: {
                enable: true,
                filter: function(filename) {
                    return !filename.match(/\.(slim|stylus|coffee)$/);
                }
            }
        }));
});

参考
https://github.com/schickling/gulp-webserver/issues/11