当我运行gulp scripts
时,all.js和all.min.js都会缩小。有人知道为什么会发生这种事吗?
gulp.task("scripts", function() {
var concatted = gulp.src(['js/first.js', 'js/second.js'])
.pipe(concat('all.js'));
// output concatenated scripts to js/all.js
concatted.pipe(gulp.dest('js'));
// minify concatenated scripts and output to js/all.min.js
concatted.pipe(uglify())
.pipe(rename('all.min.js')
.pipe(gulp.dest('js'))
});
问题在这里
// output concatenated scripts to js/all.js
concatted.pipe(gulp.dest('js'));
您不会将修改后的流返回到concatted
。
您可以将其更改为
// output concatenated scripts to js/all.js
concatted = concatted.pipe(gulp.dest('js'));
但这也和预期的一样有效
gulp.task("scripts", function() {
return gulp.src(['js/first.js', 'js/second.js'])
.pipe(concat('all.js'))
.pipe(gulp.dest('js'))
.pipe(uglify())
.pipe(rename('all.min.js')
.pipe(gulp.dest('js'));
});
发生的情况是,您正在连接两个脚本
var concatted = gulp.src(['js/first.js', 'js/second.js'])
.pipe(concat('all.js'));
// Both scripts are now in 'all.js'
缩小之前
concatted.pipe(uglify())
.pipe(rename('all.min.js')
.pipe(gulp.dest('js'))
一种可能的解决方案是:
gulp.src('js/first.js')
.pipe(uglify())
.pipe(rename('all.min.js'))
.pipe(gulp.dest('js'));
希望能有所帮助。