Когда я обновляю свой код SASS, часы gulp обнаружат его и запустят задачу gulp.Эта задача имеет browserSync.stream()
после компиляции (поэтому нет необходимости перезагружать всю страницу), но когда я просматриваю свой тег <head>
, файл CSS вводится несколько раз.
Автономный файл задачи sass.js
:
module.exports = function(gulp, browserSync) {
return function() {
gulp.src('dev/style.scss')
.pipe(plumber())
.pipe(sourcemaps.init())
.pipe(sass({outputStyle: 'expanded'}))
.pipe(sourcemaps.write('./'))
.pipe(plumber.stop())
.pipe(gulp.dest('assets/admin/dev/css'))
.pipe(browserSync.stream());
};
};
В gulpfile.js
:
browserSync.init({
proxy: 'my-website.dev'
});
gulp.watch('dev/*.scss', ['sass']);
Это то, что я нашел в теге <head>
:
<link href="//localhost:3000/assets/admin/dev/css/styles.css" rel="stylesheet">
<link href="http://localhost:3000/assets/admin/dev/css/styles.css?browsersync=1549380294464" rel="stylesheet">
<link href="http://localhost:3000/assets/admin/dev/css/styles.css?browsersync=1549380300994" rel="stylesheet">
<link href="http://localhost:3000/assets/admin/dev/css/styles.css?browsersync=1549380305255" rel="stylesheet">
<link href="http://localhost:3000/assets/admin/dev/css/styles.css?browsersync=1549380308183" rel="stylesheet">
Так что очевидно, что browserSync тольковнедряет один и тот же файл с другой версией.Но старые link
остаются там и создают проблемы.