Vue 实现CLI 3.0 + momentjs + lodash打包时优化


Posted in Javascript onNovember 13, 2019

在vue-cli 2.0时代,webpack的配置是有独立文件的,包含在build目录下,修改也比较方便

到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 momentjs
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
  }
}

编译

通过yarn run build 编译并生成报表,图比较老,用的其他项目里面没有lodash

压缩前

Vue 实现CLI 3.0 + momentjs + lodash打包时优化

压缩后

Vue 实现CLI 3.0 + momentjs + lodash打包时优化

参考

webpack 修改插件选项

webpack-chain

以上这篇Vue 实现CLI 3.0 + momentjs + lodash打包时优化就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
控制页面按钮在后台执行期间不重复提交的JS方法
Jun 24 Javascript
javascript实用小函数使用介绍
Nov 11 Javascript
javascript放大镜效果的简单实现
Dec 09 Javascript
一个仿糯米弹框效果demo
Jul 22 Javascript
JavaScript获取并更改input标签name属性的方法
Jul 02 Javascript
js与jQuery实现checkbox复选框全选/全不选的方法
Jan 05 Javascript
Angularjs中的页面访问权限怎么设置
Nov 11 Javascript
xmlplus组件设计系列之网格(DataGrid)(10)
May 05 Javascript
Koa2微信公众号开发之本地开发调试环境搭建
May 16 Javascript
2种在vue项目中使用百度地图的简单方法
Sep 28 Javascript
小试小程序云开发(小结)
Jun 06 Javascript
vue获取data数据改变前后的值方法
Nov 07 Javascript
在vue中使用防抖和节流,防止重复点击或重复上拉加载实例
Nov 13 #Javascript
在vue-cli中引入lodash.js并使用详解
Nov 13 #Javascript
vue 解除鼠标的监听事件的方法
Nov 13 #Javascript
在vue+element ui框架里实现lodash的debounce防抖
Nov 13 #Javascript
element实现合并单元格通用方法
Nov 13 #Javascript
vue之debounce属性被移除及处理详解
Nov 13 #Javascript
Vue的click事件防抖和节流处理详解
Nov 13 #Javascript
You might like
7个超级实用的PHP代码片段
2011/07/11 PHP
php输出echo、print、print_r、printf、sprintf、var_dump的区别比较
2013/06/21 PHP
php动态添加url查询参数的方法
2015/04/14 PHP
php+html5实现无刷新图片上传教程
2016/01/22 PHP
用jQuery中的ajax分页实现代码
2011/09/20 Javascript
正负小数点后两位浮点数实现原理及代码
2013/09/06 Javascript
利用cookie记住背景颜色示例代码
2013/11/04 Javascript
jQuery列表拖动排列具体实现
2013/11/04 Javascript
js将滚动条滚动到指定位置的简单实现方法
2016/06/25 Javascript
AngularJs篇:使用AngularJs打造一个简易权限系统的实现代码
2016/12/26 Javascript
Angularjs 依赖压缩及自定义过滤器写法
2017/02/04 Javascript
JS中正则表达式全局匹配模式 /g用法详解
2017/04/01 Javascript
原生JS实现N级菜单的代码
2017/05/21 Javascript
js保留两位小数方法总结
2018/01/31 Javascript
Vue.js单向绑定和双向绑定实例分析
2018/08/14 Javascript
轻量级富文本编辑器wangEditor结合vue使用方法示例
2018/10/10 Javascript
Vue组件间通信方法总结(父子组件、兄弟组件及祖先后代组件间)
2019/04/17 Javascript
Node 搭建一个静态资源服务器的实现
2019/05/20 Javascript
python字符串中的单双引
2017/02/16 Python
python opencv检测目标颜色的实例讲解
2018/04/02 Python
python做反被爬保护的方法
2019/07/01 Python
Django框架基础模板标签与filter使用方法详解
2019/07/23 Python
Python利用matplotlib绘制约数个数统计图示例
2019/11/26 Python
Python Pillow.Image 图像保存和参数选择方式
2020/01/09 Python
Django REST 异常处理详解
2020/07/15 Python
2020年10款优秀的Python第三方库,看看有你中意的吗?
2021/01/12 Python
Python实现简单的2048小游戏
2021/03/01 Python
字中字效果的实现【html5实例】
2016/05/03 HTML / CSS
Linux不知道文件后缀名怎么判断文件类型
2012/04/26 面试题
行政专员工作职责
2013/12/22 职场文书
财务总监岗位职责
2014/03/07 职场文书
党员干部反四风民主生活会对照检查材料思想汇报
2014/10/12 职场文书
医生学习党的群众路线教育实践活动心得体会
2014/11/03 职场文书
2015年生产部工作总结范文
2015/05/25 职场文书
太行山上观后感
2015/06/05 职场文书
CentOS下安装Jenkins的完整步骤
2022/04/07 Servers