javascript - 我无法弄清楚为什么我的 gulp 文件没有观看我的 html 文件?
问题描述
在过去使用过 gulp 3 之后,我第一次使用 gulp 4。我为我的项目设置了一个 gulp 构建,虽然它对其他一切都很好,但它只是拒绝观看任何 html 更改并在更改时重新加载页面。运行 gulp watch 时,我没有收到任何错误并在我的终端中获得标准的“从 ./dist 提供文件”。
它正在工作,但我一定改变了一些东西,但就是不知道是什么!
// bs
function browserSync(done) {
server.init({
server: {
baseDir: "./dist"
}
});
done();
}
// reload
function reload(done) {
server.reload();
done();
}
// html task
function html() {
const out = `${dist}/`;
return gulp
.src(`${src}/**/*.html`)
.pipe(newer(out))
.pipe(devBuild ? noop() : htmlclean())
.pipe(gulp.dest(out));
}
// watch for file changes
function watch(done) {
// html changes
gulp.watch(`${src}/**/*.html`, gulp.series(html, reload));
// css changes
gulp.watch(`${src}/scss/**/*`, gulp.series(css));
// js changes
gulp.watch(`${src}/js/**/*`, gulp.series(js));
//sw changes
gulp.watch(`${src}/sw.js`, gulp.series(sw));
done();
}
exports.watch = gulp.parallel(watch, browserSync);
我希望任务能够复制我的 html 文件,并且服务器会刷新我的 html 更改
解决方案
我在构建任务中缺少对导出的引用。不确定这是否会影响它,但我也删除了我的浏览器缓存,它似乎又开始工作了。不确定这一点,但如果这有助于将来阅读的任何人,则案例已解决。
exports.build = gulp.series(
exports.clean,
gulp.parallel(
exports.favicon,
exports.fonts,
exports.html,
exports.css,
exports.js,
exports.sw
)
);
编辑*:原来我正在从我的服务人员加载资产,并且完全忘记打开 Chrome 刷新时重新加载以使用 SW 进行开发!
推荐阅读
- docker - 如何设置 Docker 容器的 CPU 优先级(niceness)?
- node.js - 无法在 mac 上将节点版本从 8 切换到 10
- python - 更正不可散列的类型:'dict_keys'
- android - 将 onFocus 和背景图像添加到视图
- field - 如何解读 Blender 的 SDNA 结构字段类型索引?
- php - PHP DateTime 无法解析 31/05/2018
- java - 添加 Spring 布局时,GUI 不会显示标签和文本字段
- reactjs - React/Redux 订阅 redux store 发出的最新状态值
- php - PUT 方法抛出 BadMethodCallException
- typescript - Firebase Cloud Functions with Typescript,如何转换复杂的界面