Gulp webpack-stream运行生产

时间:2017-02-28 13:18:19

标签: webpack gulp

我使用gulp运行Webpack,使用webpack-stream。

我使用这个config并且可以和我一起工作。

如何从gulp运行Webpack production-build webpack -p

2 个答案:

答案 0 :(得分:2)

根据webpack documentation使用webpack -p等同于以下内容:

webpack --optimize-minimize --define process.env.NODE_ENV="'production'"

这两个选项分别添加了webpack.optimize.UglifyJsPluginwebpack.DefinePlugin

您需要做的是在webpack配置中手动添加这两个插件。

基于您链接到的the other answer应该如下所示:

var gulp = require('gulp');
var webpackStream = require('webpack-stream');
var webpack2 = require('webpack');

gulp.task('default', function() {
  var options = {
    plugins: [
      new webpack2.DefinePlugin({
        'process.env': { 'NODE_ENV': "'production'" }
      }),
      new webpack2.optimize.UglifyJsPlugin()
    ]
  };
  return gulp.src('src/entry.js')
    .pipe(webpackStream(options, webpack2))
    .pipe(gulp.dest('dist/'));
});

答案 1 :(得分:1)

Webpack 4支持在配置对象中指定mode: "production"

这是配置(从Sven的答案无耻地借用):

var gulp = require('gulp');
var webpackStream = require('webpack-stream');
var webpack4 = require('webpack');  // Assuming we've installed Webpack 4+

gulp.task('default', function() {
  var options = {
    mode: "production"
  };
  return gulp.src('src/entry.js')
    .pipe(webpackStream(options, webpack4))
    .pipe(gulp.dest('dist/'));
});