gulpを使ったBrowsersyncがなぜか1回しかリロードされなかった時の対処法。
はじめに、動かなかったソース。
恐れ多くも、スクーを参考に進めていたので、そのままです。。。
var gulp = require("gulp");
var browserSync = require("browser-sync");
gulp.task("default", function() {
browserSync.init({
server: {
baseDir: "./src"
}
});
gulp.watch("src/**", function() {
browserSync.reload()
});
});
対処法は、done()をつけました。
functionの中にreturnがなければ、done();をつけてそのタスクを完了したとしなければエラーが出るそうです。
多分今回はタスクが完了した事になっていなかったのが原因だったのかな。と思います。
以下、参考にさせていただきました。
var gulp = require("gulp");
var browserSync = require("browser-sync");
gulp.task("default", function(done) { //doneをつけました。
browserSync.init({
server: {
baseDir: "./src"
}
});
gulp.watch("src/**", function(done) { //doneをつけました。
browserSync.reload();
done(); //追加
});
});
これでリロード1回しかしない問題は解消できました!