繁体   English   中英

我无法弄清楚为什么我的gulp文件没有观看我的html文件?

[英]I cannot work out why my gulp file is not watching my html files?

在过去使用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开发!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM