2014-05-23 108 views
0

給定一個代碼JS 我想生成它的兩個副本有沒有更好的方法來編寫下面的gulp.js(with browserify)?

其中之一是browserify 版本CONCAT而另一種是變醜browserfied版本

我設法拿出吞氣.js如下:

var gulp = require('gulp'); 
var browserify = require('browserify'); 
var uglify = require('gulp-uglify'); 
var source = require('vinyl-source-stream'); 
var rename = require('gulp-rename'); 
var streamify = require('gulp-streamify') 

gulp.task('js',function(){ 

    var outputDir = 'someoutputfolder'; 

    browserify('main.js') 
     .bundle({debug:true}) 
     .pipe(source('build.js')) 
     .pipe(gulp.dest(outputDir)); 

    browserify('main.js') 
     .bundle({debug:true}) 
     .pipe(source('build.js')) 
     .pipe(streamify(uglify())) 
     .pipe(gulp.dest(outputDir)); 
}); 

我想知道是否有更高效的方法來實現我的目標。

任何幫助表示讚賞。

在這一點上我想你只是尋找DRY-EST可能實現

回答

2

好,所以也許:

var gulp = require('gulp'); 
var browserify = require('browserify'); 
var uglify = require('gulp-uglify'); 
var source = require('vinyl-source-stream'); 
var rename = require('gulp-rename'); 
var streamify = require('gulp-streamify') 

gulp.task('js',function(){ 

    var outputDir = 'someoutputfolder'; 

    var bundle = browserify('main.js') 
     .bundle({debug:true}); 

    bundle.pipe(source('build.js')) 
     .pipe(gulp.dest(outputDir)); 

    bundle.pipe(source('build-min.js')) 
     .pipe(streamify(uglify())) 
     .pipe(gulp.dest(outputDir)); 
}); 

我真的不知道該給你買了很多,但我想這是一個小更好。

+0

感謝您的幫助。你的重構讓我更加了解gulp.js.時間也有所不同。在我的筆記本電腦上,我的代碼和您的代碼之間的差異約爲3秒。 –

+0

哦 - 你的意思是你加快了速度?可能是因爲你沒有運行bundle()命令兩次... –

相關問題