BrowserSync 在第二次刷新后显示更改
BrowserSync displays changes after 2nd refresh
我在 gulp 中遇到了 browserSync 插件的恼人问题。如果我在 html 中更改某些内容,更改将在第二次刷新后显示。它仅适用于 html,如果我更改 css 或 js,则更改在第一次重新加载后可见。这是我的 browserSync 任务:
gulp.task('serve', function () {
browserSync.init({
server: {
baseDir: ["./dist", "./dev", "./../../global-assets"]
}
});
gulp.watch('dev/sass/**', ['sass']);
gulp.watch('dev/sass/**').on('change', reload);
gulp.watch('dev/js/*.js', ['js']);
gulp.watch('dev/js/*.js').on('change', reload);
gulp.watch('dev/templates/*.html', ['htmlSSI']);
gulp.watch('dev/templates/*.html').on('change', reload);
});
和 SSI 任务:
gulp.task('htmlSSI', function() {
es.merge(gulp.src(globalTemplates), gulp.src(localTemplates))
.pipe(includer())
.pipe(gulp.dest('dist/'));
});
看起来您正在 htmldist 文件夹
中的 SSI 任务更改 html 之前重新加载页面
gulp.watch('dev/templates/*.html').on('change', reload);
尝试将其更改为观察来自 htmlSSI 任务
的输出 html
gulp.watch('dist/*.html').on('change', reload);
我在 gulp 中遇到了 browserSync 插件的恼人问题。如果我在 html 中更改某些内容,更改将在第二次刷新后显示。它仅适用于 html,如果我更改 css 或 js,则更改在第一次重新加载后可见。这是我的 browserSync 任务:
gulp.task('serve', function () {
browserSync.init({
server: {
baseDir: ["./dist", "./dev", "./../../global-assets"]
}
});
gulp.watch('dev/sass/**', ['sass']);
gulp.watch('dev/sass/**').on('change', reload);
gulp.watch('dev/js/*.js', ['js']);
gulp.watch('dev/js/*.js').on('change', reload);
gulp.watch('dev/templates/*.html', ['htmlSSI']);
gulp.watch('dev/templates/*.html').on('change', reload);
});
和 SSI 任务:
gulp.task('htmlSSI', function() {
es.merge(gulp.src(globalTemplates), gulp.src(localTemplates))
.pipe(includer())
.pipe(gulp.dest('dist/'));
});
看起来您正在 htmldist 文件夹
中的 SSI 任务更改 html 之前重新加载页面gulp.watch('dev/templates/*.html').on('change', reload);
尝试将其更改为观察来自 htmlSSI 任务
的输出 htmlgulp.watch('dist/*.html').on('change', reload);