到vue-cli 3.0后,webpack配置被整合到vue-cli的配置中了,需要配置一些打包插件比较麻烦了,比如优化momentjs
压缩包,使用webpack-bundle-analyzer
等…
研究后发现vue-cli 3.0使用了chainWebpack
来支持额外的插件配置,其实和2.0是差不多的
我们这里使用momentjs
,lodash
和webpack-bundle-analyzer
来演示如何配置chainWebpack
安装依赖
chainWebpack
已经默认包含在vue-cli中了,无需安装
只需安装webpack-bundle-analyzer
和momentjs
,lodash
,我用的是yarn,所以
yarn add webpack-bundle-analyzer lodash-webpack-plugin --dev //优化要用到的插件
创建vue.config.js
在根目录下创建vue.config.js
vue.config.js
var webpack = require('webpack') //引入webpack库 var BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin //引入webpack-bundle-analyzer module.exports = { chainWebpack: config => { config.plugin('ignore') .use(new webpack.IgnorePlugin(/^./locale$/, /moment$/));//忽略/moment/locale下的所有文件 config.plugin('analyzer') .use(new BundleAnalyzerPlugin())//使用webpack-bundle-analyzer 生成报表 config.plugin("loadshReplace") .use(new LodashModuleReplacementPlugin());//优化lodash } }