Gulp:观看HTML文件,执行一些任务,然后浏览器Sync.reload



我们的HTML文件是由几个模板/部分HTML文件"组装"而成的。现在我希望 Gulp 能够按顺序执行这些任务:

  1. 观看"模板"HTML 文件
  2. 如果有任何更新,请运行任务pages
  3. 然后,刷新网页。

我通读了本教程:https://www.browsersync.io/docs/gulp/。但它只是监视 HTML 文件并重新加载。我试过这个:

gulp.watch([
    path.join(dpw.src.commonLayouts, 'layout.html'),
    dpw.src.commonPages + "/**/*.html",
    dpw.src.sitePages + "/**/*.html"
], ['pages']).on("change", browserSync.reload);

网页将自动重新加载。并运行任务pages

但是,刷新的页面始终落后一个版本。这意味着,如果我将某些文本从"12"更改为"123",页面将刷新,但文本为"12"。然后我改成"1234",页面刷新为"123"......

我正在使用 3.9.0 Gulp 和 2.11.1 browser-sync

请帮忙。谢谢。

感谢@MatthewRath,我使用 runSequence 实现了它:

gulp.task('pages-watch', function () {
    runSequence('pages', browserSync.reload);
});
gulp.watch([
    path.join(dpw.src.commonLayouts, 'layout.html'),
    dpw.src.commonPages + "/**/*.html",
    dpw.src.sitePages + "/**/*.html"
], ['pages-watch']);

但它引入了一个新任务,有点乏味。

最新更新