【发布时间】:2019-10-05 18:21:48
【问题描述】:
尝试使用带有 Browsersync 的 Gulp 4 为新的 PWA 创建创建样板,以自动执行任务、自动重新加载和自动注入更改。进行更改时正在更新 Dist 文件夹文件。重新加载仅适用于 HTML。更改 CSS 和 HTML 后,CSS 不会自动注入并且 HTML 不会重新加载。 https://gist.github.com/flaura42/a22823d97baf889160b2b18ca85dbfb4
我已经阅读了许多其他 SO 问题并尝试了不同的方法,但到目前为止没有任何效果。 Gist 已注释掉代码以显示我尝试过的一些方法。我在安装 Gulp 4 之前卸载了 Gulp。
import babel from 'gulp-babel';
import browserSync from 'browser-sync';
import del from 'del';
const server = browserSync.create();
// Process and minify css, copy to dist folder
export function styles() {
return gulp.src(paths.styles.src)
.pipe(gulp.dest(paths.styles.dest))
.pipe(server.reload({stream: true}));
}
// Copy html to dist folder
export function html() {
return gulp.src(paths.html.src)
.pipe(gulp.dest(paths.html.dest));
}
// Watch files for changes and reload server
export function watch() {
gulp.watch(paths.styles.src, styles);
gulp.watch(paths.html.src, html).on('change', server.reload);
}
// Start serving src folder
export function serve(done) {
server.init({
server: {
baseDir: './src'
}
});
done();
}
// Build dist folder, start server, and watch files
const build = gulp.series(clean, gulp.parallel(styles, html), serve, watch);
// Make build be default task
export default build;
我希望页面在进行更改时重新加载/自动注入。终端输出表明正在发生这种情况,但未显示任何更改:
[13:35:57] Starting 'styles'...
[Browsersync] 1 file changed (app.css)
[13:35:57] Finished 'styles' after 8.05 ms
[13:36:03] Starting 'html'...
[13:36:03] Finished 'html' after 6.04 ms
[Browsersync] Reloading Browsers...
【问题讨论】:
标签: javascript gulp browser-sync gulp-watch