【问题标题】:Gulp v4 - tasks ordering issueGulp v4 - 任务排序问题
【发布时间】:2017-07-24 10:00:30
【问题描述】:

我正在尝试使用 gulp-rev 和 gulp-revReplace 创建 cahe-buster,当我编译 javascript 时一切正常,但是主 css 文件的替换无法正常工作,replace 总是需要旧的 rev-manifest.json 文件而不是新的 - 由任务生成,我假设这与 gulp 系列中的任务顺序有关?因为代码几乎与 javascript 任务的代码相同,所以为什么它的工作方式不同?

这是我的 gulpfile.js https://github.com/AdamWojda/35_web_dev_chalange/blob/master/Gulpfile.js

【问题讨论】:

    标签: javascript gulp gulp-rev


    【解决方案1】:

    运行时如下所示:

    | watch
    |--
      | generate_js              generate_css
      |-- compress_javascript  |-- generate_styles
      |-- revreplace           |-- revreplace
    

    一个任务中的revreplace 可能会重写第二个任务中的manifest.json 的内容。 jamesknelson 在文档中使用反向方式

    gulp.task("revision", ["dist:css", "dist:js"], function(){
        return gulp.src(["dist/**/*.css", "dist/**/*.js"])
            .pipe(rev())
            .pipe(gulp.dest(opt.distFolder))
            .pipe(rev.manifest())
            .pipe(gulp.dest(opt.distFolder))
    })
    

    每个revision 任务首先执行dist:cssdist:js,最后重写(一次)manifest.json。我建议改变任务的执行方式(watch -> revreplace -> generate_js && generate_css)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-08
      • 2023-04-03
      • 2015-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多