使用vue打包时vendor文件过大或者是app.js文件很大的问题


Posted in Javascript onJune 29, 2018

第一次使用vue2.0开发,之前都是用的angular1.x。在使用vue-cli脚手架打包后(UI用的Element-ui),发现vendor文件很大,将近1M左右。。后来翻阅资料才明白,原来webpack把所有的库都打包到了一起,导致文件很大。

我的解决办法:

  1、把不常改变的库放到index.html中,通过cdn引入,比如下面这样:

使用vue打包时vendor文件过大或者是app.js文件很大的问题

然后找到build/webpack.base.conf.js文件,在 module.exports = { } 中添加以下代码

externals: {
  'vue': 'Vue',
  'vue-router': 'VueRouter',
  'element-ui': 'ELEMENT',
 },

这样webpack就不会把vue.js, vue-router, element-ui库打包了。声明一下,我把main.js中对element的引入删掉了,不然我发现打包后的app.css还是会把element的css打包进去,删掉后就没了。

然后你打包就会发现vendor文件小了很多~

如果你还不满足,请接着往下看·····

2、vue路由的懒加载(具体作用,官网查看哦,这里就不多介绍了)。

刚开始我们使用路由可能是下面这样(router.js),这样一开始进入页面就会把所有的路由资源都加载,如果项目大,加载的内容就会很多,等待的时间页就会越长,导致给用户的不好的体验效果。

使用vue打包时vendor文件过大或者是app.js文件很大的问题

为了把路由分模块,然后每次进入一个新页面才加载该页面所需要的资源(也就是异步加载路由),我们可以像下面这样使用(router.js):

使用vue打包时vendor文件过大或者是app.js文件很大的问题

然后你打包就会发现,多了很多1.xxxxx.js;2.xxxxx.js等等,而vendor.xxx.js没了,剩下app.js 和manifest.js,而且app.js还很小,我这里是100k多一点。

使用vue打包时vendor文件过大或者是app.js文件很大的问题

这里我没有生成map文件,这样打包速度快一些,整个项目文件也小很多(map文件一般都很大);

取消生成map文件,找到config/index.js ,修改下面箭头指向为false,就行了。

使用vue打包时vendor文件过大或者是app.js文件很大的问题

刚开始使用,一路磕磕碰碰在所难免,也借鉴了很多前辈们的经验,所以在这里记录一下,希望能帮到更多的人。

总结

以上所述是小编给大家介绍的使用vue打包时vendor文件过大或者是app.js文件很大的问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript事件列表解说
Dec 22 Javascript
基于jQuery的js分页代码
Jun 10 Javascript
javascript 正则表达式相关应介绍
Nov 27 Javascript
javascript正则匹配汉字、数字、字母、下划线
Apr 10 Javascript
js从Cookies里面取值的简单实现
Jun 30 Javascript
JavaScript获取网页中第一个链接ID的方法
Apr 03 Javascript
jQuery.Uploadify插件实现带进度条的批量上传功能
Jun 08 Javascript
JavaScript实现简单的双色球(实例讲解)
Jul 31 Javascript
详解如何使用koa实现socket.io官网的例子
Nov 04 Javascript
vue远程加载sfc组件思路详解
Dec 25 Javascript
Node.js API详解之 querystring用法实例分析
Apr 29 Javascript
js实现可爱的气泡特效
Sep 05 Javascript
vue项目打包后打开页面空白解决办法
Jun 29 #Javascript
详解Vue webapp项目通过HBulider打包原生APP
Jun 29 #Javascript
Vue下路由History模式打包后页面空白的解决方法
Jun 29 #Javascript
详解Vue微信授权登录前后端分离较为优雅的解决方案
Jun 29 #Javascript
JavaScript实现仿Clock ISO时钟
Jun 29 #Javascript
vue ssr 指南详读
Jun 29 #Javascript
jQuery实现获取动态添加的标签对象示例
Jun 28 #jQuery
You might like
php面向对象全攻略 (十七) 自动加载类
2009/09/30 PHP
php下批量挂马和批量清马代码
2011/02/27 PHP
PHP中输出转义JavaScript代码的实现代码
2011/04/22 PHP
输入值/表单提交参数过滤有效防止sql注入的方法
2013/12/25 PHP
php实现按指定大小等比缩放生成上传图片缩略图的方法
2014/12/15 PHP
PHP实现的简单AES加密解密算法实例
2017/05/29 PHP
PHP实现对图片的反色处理功能【测试可用】
2018/02/01 PHP
比较全的JS checkbox全选、取消全选、删除功能代码
2008/12/19 Javascript
javascript对话框使用方法(警告框 javascript确认框 提示框)
2014/01/07 Javascript
jqeury-easyui-layout问题解决方法
2014/03/24 Javascript
vue-router 学习快速入门
2017/03/01 Javascript
微信小程序“摇一摇”的实例代码
2017/07/20 Javascript
layer实现关闭弹出层刷新父界面功能详解
2017/11/15 Javascript
mpvue 如何使用腾讯视频插件的方法
2018/07/16 Javascript
Node.js JSON模块用法实例分析
2019/01/04 Javascript
element-ui 远程搜索组件el-select在项目中组件化的实现代码
2019/12/04 Javascript
[01:34]2016国际邀请赛中国区预选赛IG战队教练采访
2016/06/27 DOTA
[55:03]LGD vs EG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
python进阶教程之循环对象
2014/08/30 Python
Python脚本实现代码行数统计代码分享
2015/03/10 Python
Python中logger日志模块详解
2020/08/04 Python
Jupyter安装链接aconda实现过程图解
2020/11/02 Python
原装进口全世界:天猫国际
2016/08/03 全球购物
猎人靴英国官网:Hunter Boots
2017/02/02 全球购物
Exoticca英国:以最优惠的价格提供豪华异国情调旅行
2018/10/18 全球购物
下面这个程序执行后会有什么错误或者效果
2014/11/03 面试题
Python面试题集
2012/03/08 面试题
2013年入党人员的自我鉴定
2013/10/25 职场文书
投资意向书范本
2014/04/01 职场文书
车队司机个人自我鉴定
2014/04/17 职场文书
公安领导班子四风问题个人整改措施思想汇报
2014/10/09 职场文书
群众路线教育实践活动心得体会(教师)
2014/10/31 职场文书
质量承诺书格式范文
2015/04/28 职场文书
学生会自荐信
2019/05/16 职场文书
MySQL 数据类型选择原则
2021/05/27 MySQL
Vue3实现简易音乐播放器组件
2022/08/14 Vue.js