webpack.prod.js 981 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. var webpack = require('webpack');
  2. var webpackMerge = require('webpack-merge');
  3. var ExtractTextPlugin = require('extract-text-webpack-plugin');
  4. var commonConfig = require('./webpack.common.js');
  5. var helpers = require('./helpers');
  6. const ENV = process.env.NODE_ENV = process.env.ENV = 'production';
  7. module.exports = webpackMerge(commonConfig, {
  8. devtool: 'source-map',
  9. output: {
  10. path: helpers.root('dist'),
  11. publicPath: '/',
  12. filename: '[name].[hash].js',
  13. chunkFilename: '[id].[hash].chunk.js'
  14. },
  15. htmlLoader: {
  16. minimize: false // workaround for ng2
  17. },
  18. plugins: [
  19. new webpack.NoErrorsPlugin(),
  20. new webpack.optimize.DedupePlugin(),
  21. new webpack.optimize.UglifyJsPlugin({ // https://github.com/angular/angular/issues/10618
  22. mangle: {
  23. keep_fnames: true
  24. }
  25. }),
  26. new ExtractTextPlugin('[name].[hash].css'),
  27. new webpack.DefinePlugin({
  28. 'process.env': {
  29. 'ENV': JSON.stringify(ENV)
  30. }
  31. })
  32. ]
  33. });