使用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 相关文章推荐
setInterval 和 setTimeout会产生内存溢出
Feb 15 Javascript
JS提交并解析后台返回的XML的代码
Nov 03 Javascript
JavaScript DOM 添加事件
Feb 14 Javascript
javascript动态修改Li节点值的方法
Jan 20 Javascript
JavaScript中几种排序算法的简单实现
Jul 29 Javascript
原生js的RSA和AES加密解密算法
Oct 08 Javascript
vue实现简单表格组件实例详解
Apr 16 Javascript
angular 用拦截器统一处理http请求和响应的方法
Jun 08 Javascript
关于layui 实现点击按钮添加一行(方法渲染创建的table)
Sep 29 Javascript
Vue过渡效果之CSS过渡详解(结合transition,animation,animate.css)
Feb 05 Javascript
Vue+Element ui 根据后台返回数据设置动态表头操作
Sep 21 Javascript
Vue中nprogress页面加载进度条的方法实现
Nov 13 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 autoload与spl_autoload自动加载机制的深入理解
2013/06/05 PHP
WordPress中缩略图的使用以及相关技巧
2015/11/24 PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
2015/12/01 PHP
php获得刚插入数据的id 的几种方法总结
2018/05/31 PHP
bcastr2.0 通用的图片浏览器
2006/11/22 Javascript
实现复选框全选/全不选切换
2006/12/23 Javascript
js实现格式化金额,字符,时间的方法
2015/02/26 Javascript
js实现仿Discuz文本框弹出层效果
2015/08/13 Javascript
jquery插件EasyUI中form表单提交实例分享
2016/01/11 Javascript
Vue.js每天必学之Class与样式绑定
2016/09/05 Javascript
从零开始搭建webpack+react开发环境的详细步骤
2018/05/18 Javascript
webpack 样式加载的实现原理
2018/06/12 Javascript
泛谈JS逻辑判断选择器 || &&
2019/05/24 Javascript
VUE兄弟组件传值操作实例分析
2019/10/26 Javascript
使用Python的Supervisor进行进程监控以及自动启动
2014/05/29 Python
通过代码实例展示Python中列表生成式的用法
2015/03/31 Python
基于python的字节编译详解
2017/09/20 Python
Python numpy 常用函数总结
2017/12/07 Python
python调用百度语音识别实现大音频文件语音识别功能
2018/08/30 Python
python traceback捕获并打印异常的方法
2018/08/31 Python
python列表list保留顺序去重的实例
2018/12/14 Python
浅谈python常用程序算法
2019/03/22 Python
python算法题 链表反转详解
2019/07/02 Python
解决python多行注释引发缩进错误的问题
2019/08/23 Python
Jupyter 无法下载文件夹如何实现曲线救国
2020/04/22 Python
详解Python 函数参数的拆解
2020/09/02 Python
厂长助理岗位职责
2013/12/27 职场文书
领导检查欢迎词
2014/01/14 职场文书
关于逃课的检讨书
2014/01/23 职场文书
还款承诺书范文
2014/05/20 职场文书
英语教师求职信
2014/06/16 职场文书
歌咏比赛主持词
2015/06/29 职场文书
小学大队长竞选稿
2015/11/20 职场文书
Python中文纠错的简单实现
2021/07/07 Python
MySQL中一条update语句是如何执行的
2022/03/16 MySQL
Pyhton爬虫知识之正则表达式详解
2022/04/01 Python