相关依赖升级
将下面的依赖升级到对应版本
1 | "vue-loader": "^15.3.0", |
升级后vue-loader会报错, 在webpack.base.conf.js 添加:
1 | const { VueLoaderPlugin } = require('vue-loader') |
开发环境
在webpack.dev.conf.js中添加 mode : ‘production’
1 | **** |
生成环境
在webpack.prod.conf.js中添加
mode: ‘production’,
1
2
3
4
5****
const devWebpackConfig = merge(baseWebpackConfig, {
mode : 'production',
****
})用optimization代替原来的webpack.optimize.CommonsChunkPlugin 、 uglifyjs-webpack-plugin 、 webpack.optimize.ModuleConcatenationPlugin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18optimization: {
splitChunks: {
cacheGroups: {
vendors: {
test: /[\\/]node_modules[\\/]/,
chunks: 'initial',
name: 'vendors',
},
'async-vendors': {
test: /[\\/]node_modules[\\/]/,
minChunks: 2,
chunks: 'async',
name: 'async-vendors'
}
}
},
runtimeChunk: {name: 'runtime'}
},添加clean-webpack-plugin清楚编译后的文件
1
2
3
4
5
6
7
8
9
10
11const CleanWebpackPlugin = require('clean-webpack-plugin');
const webpackConfig = merge(baseWebpackConfig, {
***
plugins: [
new CleanWebpackPlugin('dist/static', {
root: path.resolve(__dirname, '../'),
}),
***
]
***
})把contenthash改成hash
修改utils.js
在 ExtractTextPlugin.extract中添加publicPath, 以保证css里面里面的图片可以正常访问
1
2
3
4
5
6
7***
return ExtractTextPlugin.extract({
use: loaders,
fallback: 'vue-style-loader',
publicPath:'../../'
})
***