javascript - 如何在不在 dist 文件夹中生成两个文件的情况下使用 Gulp gzip 压缩 uglify js

标签 javascript gulp gulp-uglify gulp-concat

我是 Gulp 新手。

我想知道如何使用 Gulp 连接、压缩和 gzip 来自静态网站的所有 js 文件。

我有一个这样的任务可以工作,但我只想在 dist 文件夹中包含 .gz 文件而不是 combined.js

gulp.task("concat-js", function () {
return gulp.src("./src/js/*.js")
    .pipe(concat("combined.min.js"))
    .pipe(uglify())
    .pipe(gzip())
    .pipe(gulp.dest("./build/js"));
});

更新

我鼓励您阅读评论。在我的例子中,问题是由 gulp-useref 的错误使用引起的,因为在构建过程结束时生成了文件。可能是菜鸟问题,但希望可以帮助任何人。

提前致谢...

最佳答案

这应该有效。只需将 .min 文件存储在临时文件夹中。如果需要,您可以稍后删除它。

gulp.task("concat-js", function () {
  return gulp.src("./src/js/*.js")
   .pipe(concat("combined.min.js"))

   .pipe(gulp.dest('./temp'))

   .pipe(uglify())
   .pipe(gzip())
   .pipe(gulp.dest("./build/js"));
});

最终文件将是“combined.min.js.gz”,它是 build/js 中唯一的文件。如果你不喜欢那个名字,你可以用 gulp-rename 重命名它。 .

关于javascript - 如何在不在 dist 文件夹中生成两个文件的情况下使用 Gulp gzip 压缩 uglify js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46715376/

相关文章:

javascript - 在函数式编程中实现双向计数器?

php - 如何从电子邮件链接或网页打开 Outlook 日历?

javascript - 将现有的遗留库转换为 es6 模块

javascript - 设置与源文件夹不同的目标文件夹结构

javascript - 如何防止 Uglify 在字符串中取消转义 "</script"?

javascript - 字段集有效性是什么意思?

css - Gulp - TypeError : Cannot assign to read only property 'cwd' of bower/bootstrap. CSS

javascript - Gulp 4 - 看不看变化

javascript - gulp - 连接到现有文件

javascript - gulp 错误 :Unable to minify JavaScript