使用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 getElementsByClassName 和js取地址栏参数
Jan 02 Javascript
JavaScript DOM 学习第九章 选取范围的介绍
Feb 19 Javascript
js实现杯子倒水问题自动求解程序
Mar 25 Javascript
常用js字符串判断方法整理
Oct 18 Javascript
JQuery each()嵌套使用小结
Apr 18 Javascript
Javascript 学习笔记之 对象篇(二) : 原型对象
Jun 24 Javascript
Vue开发过程中遇到的疑惑知识点总结
Jan 20 Javascript
javascript实现下雨效果
Mar 27 Javascript
解决vue动态为数据添加新属性遇到的问题
Sep 18 Javascript
小试小程序云开发(小结)
Jun 06 Javascript
vue改变循环遍历后的数据实例
Nov 07 Javascript
keep-alive不能缓存多层级路由菜单问题解决
Mar 10 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
收音机频率指针指示不准确和灵敏度低问题
2021/03/02 无线电
dede全站URL静态化改造[070414更正]
2007/04/17 PHP
完美解决PHP中文乱码
2009/11/26 PHP
JavaScript使用Prototype实现面向对象的方法
2015/04/14 Javascript
AngularJS验证信息框架的封装插件用法【w5cValidator扩展插件】
2016/11/03 Javascript
js仿京东轮播效果 选项卡套选项卡使用
2017/01/12 Javascript
详解Vue2.0里过滤器容易踩到的坑
2017/06/01 Javascript
js使用highlight.js高亮你的代码
2017/08/18 Javascript
浅析从vue源码看观察者模式
2018/01/29 Javascript
详解Axios 如何取消已发送的请求
2018/10/20 Javascript
js实现移动端轮播图
2020/12/21 Javascript
详解webpack 最简打包结果分析
2019/02/20 Javascript
详解将微信小程序接口Promise化并使用async函数
2019/08/05 Javascript
js中apply和call的理解与使用方法
2019/11/27 Javascript
vue组件系列之TagsInput详解
2020/05/14 Javascript
Python开发实例分享bt种子爬虫程序和种子解析
2014/05/21 Python
Python中的is和id用法分析
2015/01/26 Python
Python初学时购物车程序练习实例(推荐)
2017/08/08 Python
Python文件打开方式实例详解【a、a+、r+、w+区别】
2019/03/30 Python
python 实现手机自动拨打电话的方法(通话压力测试)
2019/08/08 Python
python kafka 多线程消费者&手动提交实例
2019/12/21 Python
python实现滑雪者小游戏
2020/02/22 Python
python使用列表的最佳方案
2020/08/12 Python
python安装sklearn模块的方法详解
2020/11/28 Python
英国在线药房和在线药剂师:Chemist 4 U
2020/01/05 全球购物
优秀信贷员先进事迹
2014/01/31 职场文书
反腐倡廉警示教育活动总结
2014/05/05 职场文书
预防煤气中毒方案
2014/06/16 职场文书
项目投资合作意向书
2014/07/29 职场文书
土地转让协议书
2014/09/27 职场文书
2014年办公室人员工作总结
2014/12/09 职场文书
高中升旗仪式主持词
2015/07/03 职场文书
你离财务总监还有多远?速览CFO的岗位职责
2019/11/18 职场文书
为什么你写的height:100%不起作用
2021/05/10 HTML / CSS
MySQL事务操作的四大特性以及并发事务问题
2022/04/12 MySQL
详解OpenCV获取高动态范围(HDR)成像
2022/04/29 Python