|
|
@@ -4,39 +4,43 @@ const WebpackMerge = require('webpack-merge')
|
|
|
const baseConfig = require('./webpack.base.js')
|
|
|
|
|
|
module.exports = WebpackMerge.merge(baseConfig,{
|
|
|
- mode: 'development',
|
|
|
+ mode: 'production',
|
|
|
+
|
|
|
// 发布组件
|
|
|
entry: "./packages/index.js",
|
|
|
+
|
|
|
output: {
|
|
|
path: path.resolve(__dirname, './dist'),
|
|
|
publicPath: '/dist/',
|
|
|
filename: 'pc-component-v3.js',
|
|
|
library: "pc-component-v3",
|
|
|
libraryTarget: "umd",
|
|
|
+ // 「devtool 中模块」的文件名模板(用于冲突)
|
|
|
umdNamedDefine: true
|
|
|
},
|
|
|
- devtool: 'source-map',
|
|
|
+
|
|
|
+
|
|
|
+ optimization: {
|
|
|
+ minimize: true, // 压缩 bundle
|
|
|
+ },
|
|
|
+
|
|
|
+ // devtool: 'source-map',
|
|
|
+
|
|
|
plugins: (module.exports.plugins || []).concat([
|
|
|
-
|
|
|
- // new webpack.optimize.UglifyJsPlugin({
|
|
|
- // sourceMap: true,
|
|
|
- // compress: {
|
|
|
- // warnings: false
|
|
|
- // }
|
|
|
- // }),
|
|
|
- // new webpack.LoaderOptionsPlugin({
|
|
|
- // minimize: false
|
|
|
- // })
|
|
|
+ new webpack.LoaderOptionsPlugin({
|
|
|
+ minimize: true
|
|
|
+ })
|
|
|
]),
|
|
|
+
|
|
|
// 不把第三方库打包到bundle中
|
|
|
externals: {
|
|
|
jQuery: 'window.$',
|
|
|
jquery: 'window.$',
|
|
|
$: 'window.$',
|
|
|
- bootstrap: 'bootstrap',
|
|
|
- moment: 'moment',
|
|
|
+ 'bootstrap': 'bootstrap',
|
|
|
+ 'moment': 'moment',
|
|
|
// 不将vue代码打包进我们的组件库代码中,如果将vue代码打包进组件库中则会报错
|
|
|
- vue: 'vue',
|
|
|
+ 'vue': 'vue',
|
|
|
'vue-i18n': 'vue-i18n',
|
|
|
'vue-router': 'vue-router',
|
|
|
'v-tooltip': 'v-tooltip',
|