Created
June 13, 2017 10:13
-
-
Save linxlad/5bfc7a2cd81e27df3376ff3ee5d0cd71 to your computer and use it in GitHub Desktop.
Dev Webpack
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const CleanObsoleteChunks = require('webpack-clean-obsolete-chunks'); | |
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin; | |
const ExtractTextPlugin = require('extract-text-webpack-plugin'); | |
const DashboardPlugin = require('webpack-dashboard/plugin'); | |
const path = require('path'); | |
const webpack = require('webpack'); | |
const BUILD_DIR = path.resolve(__dirname, '../dist'); | |
const APP_DIR = path.resolve(__dirname, 'src/'); | |
const config = { | |
devtool: 'source-map', | |
entry: { | |
"ehcp-coordinator": [ | |
APP_DIR + '/index.js' | |
] | |
}, | |
output: { | |
path: `${BUILD_DIR}/js/`, | |
filename: '[name].js', | |
chunkFilename: '[name]-chunk.js', | |
}, | |
module: { | |
rules: [ | |
{ | |
test: /\.js$/, | |
exclude: /node_modules/, | |
use: { | |
loader: 'babel-loader', | |
options: { | |
presets: ['es2015', 'es2017', 'react', 'stage-0'], | |
plugins: ['transform-runtime', 'transform-decorators-legacy', 'transform-class-properties', 'syntax-dynamic-import', | |
["import", {"libraryName": "antd", "style": false}]] | |
} | |
} | |
}, { | |
test: /\.less$/, | |
use: ExtractTextPlugin.extract({ | |
use: [{ | |
loader: "css-loader" | |
}, { | |
loader: "less-loader" | |
}] | |
}) | |
} | |
] | |
}, | |
plugins: [ | |
new webpack.DefinePlugin({ | |
'process.env.NODE_ENV': "'development'" | |
}), | |
new webpack.optimize.UglifyJsPlugin({ | |
'sourceMap': 'source-map' | |
}), | |
new webpack.optimize.CommonsChunkPlugin({ | |
name: 'vendor', | |
filename: '[name].js', | |
minChunks(module, count) { | |
var context = module.context; | |
return context && context.indexOf('node_modules') >= 0; | |
} | |
}), | |
new ExtractTextPlugin("../css/[name].css") | |
], | |
resolve: { | |
modules: [ | |
path.resolve('./'), | |
path.resolve('./node_modules'), | |
], | |
extensions: ['.js', '.json'] | |
} | |
}; | |
module.exports = config; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment