2014-11-30 19 views
8

Moja konfiguracja robi wszystko, co powinna, ale nigdy nie odświeża przeglądarki. Po odświeżeniu go ręcznie, zmiany są dostępne. Łączę się z domyślnym hostem lokalnym: 3000. Jakieś pomysły, dlaczego tak jest i jak je debugować?Synchronizacja przeglądarki (pod pyskiem) nie odświeża przeglądarki

gulpfile.js:

var gulp = require('gulp'); 
var sass = require('gulp-sass'); 
var sourcemaps = require('gulp-sourcemaps'); 
var browserSync = require('browser-sync'); 

gulp.task('html', function() { 
    browserSync.reload(); 
}); 

gulp.task('sass', function() { 
    return gulp.src('./app/scss/style.scss') 
    .pipe(sass()) 
    .pipe(gulp.dest('./app/css')) 
    .pipe(browserSync.reload({ stream:true })); 
}); 

gulp.task('serve', function() { 
    browserSync({ 
    server: { 
     baseDir: 'app' 
    } 
    }); 
}); 

gulp.task('default', ['serve'], function() { 
    gulp.watch('./app/scss/*.scss', ['sass', browserSync.reload]); 
    gulp.watch('./app/*.html', ['html', browserSync.reload]); 

}); 

przykładem wyjścia konsoli:

[BS] Local URL: http://localhost:3000 
[BS] External URL: http://192.168.1.3:3000 
[BS] Serving files from: app 
[17:10:32] Starting 'html'... 
[BS] Reloading Browsers... 
[17:10:32] Finished 'html' after 829 μs 
[BS] Reloading Browsers... 
[17:10:42] Starting 'sass'... 
[BS] 1 file changed (style.css) 
[17:10:42] Finished 'sass' after 22 ms 
[BS] Reloading Browsers... 
[17:11:02] Starting 'html'... 
[BS] Reloading Browsers... 
[17:11:02] Finished 'html' after 472 μs 
[BS] Reloading Browsers... 
+0

Nawet gdy spotkałem się z podobnym problemem, gdy byłem nowy w używaniu przeglądarki, wiersz polecenia brzmiał "przeładowanie przeglądarek", ale przeglądarka nie została w ogóle odświeżona, problem polegał na tym, że nie zawierałem tagu body na mojej stronie html gdzie synchronizacja przeglądarki może wstrzyknąć skrypt ze względu na jego funkcjonalność, upewnij się, że strona html zawiera tag body. – SU15

Odpowiedz

16

I zdobione: przeglądarka synchronizacja nie lubi ukryte znaczniki HTML, więc to (choć poprawny HTML5) nie będzie działać:

<!doctype html> 
<title>implicit</title> 

ale to będzie:

<!doctype html> 
<html> 
    <head> 
     <title>full doc</title> 
    </head> 
    <body></body> 
</html> 
+5

w rzeczywistości potrzebuje tylko znacznika ciała (i jego udokumentowanego zachowania). – rdkn

+0

To była odpowiedź, której szukałem. Jednak nie mogę znaleźć tego w dokumentacji BrowserSync. Czy to jest coś z Gulpem? – jremydeaton

+1

Powinien być w głównej dokumentacji, ale jest tu wymienione https://github.com/shakyShane/browser-sync#requirements – shane

Powiązane problemy