vue-cli 首屏加载优化问题


Posted in Javascript onNovember 06, 2018

使用 vue-cli构建的项目,在 默认情况下 ,执行 npm run build  会将所有的js代码打包为一个整体,

打包位置是 dist/static/js/app.[contenthash].js  

类似下面的路由代码

router/index.js 路由相关信息,该路由文件引入了多个 .vue组件
import Personal from '@/components/page/Personal'
import Message from '@/components/personnal/Message'
import Settings from '@/components/personnal/Settings'
import Setlanguage from '@/components/personnal/children/Setlanguage'

npm run build 会打包成一个app.[contenthash].js,这个文件会非常大,影响加载速度。

所以我们需要分模块打包,把我们想要组合在一起的组件打包到一个 chunk块中去

分模块打包需要下面这样使用 webpack的 require.ensure,并且在最后加入一个 chunk名,

相同 chunk名字的模块将会打包到一起。

const Personal = r=>require.ensure([],()=>r(require('@/components/page/Personal')),'personal');
const Message = r=>require.ensure([],()=>r(require('@/components/personnal/Message')),'personal');
const Settings = r=>require.ensure([],()=>r(require('@/components/personnal/Settings')),'personal');
const Setlanguage = r=>require.ensure([],()=>r(require('@/components/personnal/children/Setlanguage')),'personal');

根据 chunname的不同, 上面的四个组件, 将会被分成3个块打包,最终打包之后与组件相关的js文件会分为3个 (除了app.js,manifest.js, vendor.js)

总结

以上所述是小编给大家介绍的vue-cli 首屏加载优化问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jquery tools之tooltip
Jul 25 Javascript
js操作checkbox遇到的问题解决
Jun 29 Javascript
使用js实现关闭js弹出层的窗口
Feb 10 Javascript
基于jQuery+JSON的省市二三级联动效果
Jun 05 Javascript
JS文字球状放大效果代码分享
Aug 19 Javascript
js判断用户是输入的地址请求的路径(实例讲解)
Jul 18 Javascript
jQuery中的for循环var与let的区别
Apr 21 jQuery
ES6顶层对象、global对象实例分析
Jun 14 Javascript
jquery中attr、prop、data区别与用法分析
Sep 25 jQuery
JavaScript内置对象之Array的使用小结
May 12 Javascript
js+canvas实现刮刮奖功能
Sep 13 Javascript
vue.js实现点击图标放大离开时缩小的代码
Jan 27 Vue.js
Vue 实时监听窗口变化 windowresize的两种方法
Nov 06 #Javascript
vue组件tabbar使用方法详解
Nov 06 #Javascript
微信小程序下拉框功能的实例代码
Nov 06 #Javascript
详解ES6中的 Set Map 数据结构学习总结
Nov 06 #Javascript
小程序实现页面顶部选项卡效果
Nov 06 #Javascript
Vue常用的几个指令附完整案例
Nov 06 #Javascript
vue-cli 打包后提交到线上出现 "Uncaught SyntaxError:Unexpected token" 报错
Nov 06 #Javascript
You might like
浅析PHP中的UNICODE 编码与解码
2013/06/29 PHP
PHP开发Apache服务器配置
2015/07/15 PHP
php上传图片获取路径及给表单字段赋值的方法
2016/01/23 PHP
php实现当前页面点击下载文件的实例代码
2016/11/16 PHP
浅谈php使用curl模拟多线程发送请求
2019/03/08 PHP
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
2010/01/22 Javascript
33个优秀的jQuery 教程分享(幻灯片、动画菜单)
2011/07/08 Javascript
理清apply(),call()的区别和关系
2011/08/14 Javascript
JQuery扩展插件Validate—4设置错误提示的样式
2011/09/05 Javascript
通过jQuery源码学习javascript(一)
2012/12/27 Javascript
利用JS来控制键盘的上下左右键(示例代码)
2013/12/14 Javascript
jquery $("#variable") 循环改变variable的值示例
2014/02/23 Javascript
一个判断抢购时间是否到达的简单的js函数
2014/06/23 Javascript
点击表单提交时出现jQuery没有权限的解决方法
2014/07/23 Javascript
Javascript实现快速排序(Quicksort)的算法详解
2015/09/06 Javascript
Jquery $when done then的用法详解
2016/05/20 Javascript
微信小程序 倒计时组件实现代码
2016/10/24 Javascript
div实现自适应高度的textarea实现angular双向绑定
2017/01/08 Javascript
Vue的事件响应式进度条组件实例详解
2018/02/04 Javascript
js自定义input文件上传样式
2018/10/26 Javascript
微信小程序 弹窗输入组件的实现解析
2019/08/12 Javascript
js实现打字小游戏
2019/12/17 Javascript
Python的爬虫程序编写框架Scrapy入门学习教程
2016/07/02 Python
Python内存管理方式和垃圾回收算法解析
2017/11/11 Python
用python爬取租房网站信息的代码
2018/12/14 Python
python对Excel按条件进行内容补充(推荐)
2019/11/24 Python
python通过cython加密代码
2020/12/11 Python
html5 Canvas画图教程(4)—未闭合的路径及渐变色的填充方法
2013/01/09 HTML / CSS
利用html5 canvas破解简单验证码及getImageData接口应用
2013/01/25 HTML / CSS
美发店5.1活动方案
2014/01/24 职场文书
餐厅销售主管职责范本
2014/02/19 职场文书
英语教师岗位职责
2014/03/16 职场文书
晚会主持词开场白
2014/03/17 职场文书
2014年银行个人工作总结
2014/12/05 职场文书
2015年党建工作总结
2015/03/30 职场文书
JavaScript 数组去重详解
2021/09/15 Javascript