为什么我的Webpack ReactJS应用程序如此之大?

时间:2016-03-08 00:49:15

标签: reactjs webpack

我已经按照我在打包我的Webpack ReactJS应用程序进行生产时可以找到的许多提示。不幸的是,文件大小仍然是3MB。我做错了什么?

这是我的Webpack配置文件:

var path = require('path')
var webpack = require('webpack')

module.exports = {
  devtool: 'cheap-module-eval-source-map',
  entry: [
    'webpack-hot-middleware/client',
    './index'
  ],
  output: {
    path: path.join(__dirname, 'dist'),
    filename: 'bundle-webpack.js',
    publicPath: './'
  },
  plugins: [
    new webpack.optimize.OccurenceOrderPlugin(),
    new webpack.HotModuleReplacementPlugin(),
    new webpack.NoErrorsPlugin(),
    new webpack.DefinePlugin({
      'process.env.NODE_ENV': JSON.stringify('production')
    }),
    new webpack.optimize.UglifyJsPlugin({
      compress: {
        screw_ie8: true,
        warnings: false
      }
    })
  ],
  module: {
    loaders: [
      {
        test: /\.js$/,
        loaders: [ 'babel' ],
        exclude: /node_modules/,
        include: __dirname
      },
      {
        test: /\.css$/,
        loader: "style-loader!css-loader" 
      },
      {test: /node_modules\/react-chatview/, loader: 'babel' }
    ]
  }
}

非常感谢任何帮助!

我使用以下命令打包它:

> NODE_ENV=production webpack -p 

我得到以下输出:

bundle-webpack.js  3.1 MB       0  [emitted]  main

最佳,

亚伦

1 个答案:

答案 0 :(得分:7)

看起来你还有相当数量的开发者,例如热模块更换。

React Transform Boilerplate为指导,查看webpack.config.prod.js。

您也可以通过仅包含所需软件包的部分来优化您的导入,而忽略其余部分。请参阅:Reduce Your bundle.js File Size By Doing This One Thing