Javascript 我如何在不生成dist文件夹中的两个文件的情况下,用Gulp gzip一个丑陋的js呢
我是新来的大口大口喝的 我想知道如何使用Gulp从一个静态网站上获取concat、uglify和gzip所有js文件 我有一个这样的任务,但我只想在dist文件夹中包含.gz文件,而不是combined.jsJavascript 我如何在不生成dist文件夹中的两个文件的情况下,用Gulp gzip一个丑陋的js呢,javascript,gulp,gulp-uglify,gulp-concat,Javascript,Gulp,Gulp Uglify,Gulp Concat,我是新来的大口大口喝的 我想知道如何使用Gulp从一个静态网站上获取concat、uglify和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())
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中唯一的一个文件。如果你不喜欢这个名字,你可以用它来重命名。当你可以让你的服务器这么做的时候,为什么要用gzip来命名呢?我将使用S3+Cloud front来服务我的网站谢谢你的回答,但是我仍然看到在build folderHmmm中生成的两个文件,我运行了几次来验证。您是否先删除了构建文件夹,然后才重新开始?看起来uglify()正在build/js文件夹中创建附加文件。因为我在temp文件夹中看到combined.js(没有uglify文件)和build/js combined.min.js(uglify文件),所以我在temp文件夹中得到一个文件(combined.min.css),在build/js文件夹中得到一个文件(combined.min.css.gz)。在运行此操作之前,是否先删除了这两个文件夹?那么这些不是以前的旧文件了?我这么说是因为它对我来说完美无瑕。我总是在运行构建之前删除文件夹。我只是发现它适用于css文件,但不适用于js文件。我认为对你有用,因为你使用的是css文件,你能试试js文件吗?