Мой код из галпфайла
var browserSync = require("browser-sync").create();
gulp.task('watch', function(){
browserSync.init({
proxy: 'gulp.src',
browser: 'chrome',
notify: false
});
// Следить за SCSS файлами и компилить в css
gulp.watch(source_src + 'scss/**/*.scss', gulp.series('sass_compile'));
// При изменении файлов запустить релоад страницы браузера
gulp.watch('./' + path.src + '/' + "**/*.html").on('change', browserSync.reload);
gulp.watch('./' + path.src + '/' + "**/*.php").on('change', browserSync.reload);
gulp.watch(assets_src + "css/**/*.css").on('change', browserSync.reload);
gulp.watch(assets_src + 'js/**/*.js').on('change', browserSync.reload);
});
// Таск для scss==>css
gulp.task('sass_compile', function () {
return gulp.src(source_src + 'scss/**/main.scss')
.pipe(sass().on('error', sass.logError))
.pipe(gulp.dest(assets_src + 'css'))
.pipe(browserSync.stream());
});
При изменении scss файла, галп компилирует css и обновляет стили в браузере. При изменении php файла, галп обновляет страницу, но стили сбрасываются до изначального состояния. Если нажать ctrl + F5, то стили снова обновляются до текущего состояния, но если снова изменить что-то в стилях, а затем в файле php, то browsersync сбросит стили до того состояния, которое было после нажатия ctrl + F5.
Пробовал убирать строчку .pipe(browserSync.stream()); из таска и оставлять только gulp.watch(assets_src + "css/**/*.css").on('change', browserSync.reload); и наоборот, но все равно ситуция не разрешается. Почему то при обновлении страницы подгружаются стили из кэша, а не из файла css