2015-05-26 28 views
7

有後續情況:如何縮小gulp-webpack文件?

gulp.task('webpack', function(cb) { 
    gulp.src('webpack-init.js') 
    .pipe(webpack({ 
     output: { 
     filename: 'bundle.js', 
     }, 
    })) 
    .pipe(gulp.dest('./client/js')); 

    cb(); 
}); 

都可以,但我想來縮小輸出文件。

如果我使用直接一飲而盡,醜化 -

.pipe(webpack(...)) 
.pipe(uglify().on('error', gutil.log)) 
.pipe(gulp.dest('./client/js')); 

有一個錯誤: 「意外令牌:PUNC())」 和那種人的。

+0

你從哪裏得到錯誤? – SLaks

+0

在控制檯中。當uglify嘗試壓縮bundle.js時。 –

+0

完整輸出是什麼? – SLaks

回答

9

我找到了解決方案。我們可以使用普通版本的webpack(不只是gulp-webpack)提供插件包含功能:

var gulpWebpack = require('gulp-webpack'), 
    webpack = require('webpack'); 

gulp.task('webpack', function() { 
    gulp.src('webpack-init.js') 

    .pipe(gulpWebpack({ 
     output: { 
     filename: 'bundle.js', 
     }, 
     plugins: [new webpack.optimize.UglifyJsPlugin()], 
    }, webpack)) 
    .pipe(gulp.dest('./client/js')); 
});