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 相关文章推荐
javascript 命名规则 变量命名规则
Feb 25 Javascript
JS获取IMG图片高宽的简单实例
May 17 Javascript
JS原型链怎么理解
Jun 27 Javascript
jQuery中的AjaxSubmit使用讲解
Sep 25 Javascript
javascript动画之磁性吸附效果篇
Dec 09 Javascript
jQuery使用siblings获取某元素所有同辈(兄弟姐妹)元素用法示例
Jan 30 Javascript
Vue.js:使用Vue-Router 2实现路由功能介绍
Feb 22 Javascript
Node.js 异步异常的处理与domain模块解析
May 10 Javascript
vue初尝试--项目结构(推荐)
Jan 30 Javascript
Vue父子组建的简单通信之控制开关Switch的实现
Jun 04 Javascript
JS防抖和节流实例解析
Sep 24 Javascript
Vue中ref和$refs的介绍以及使用方法示例
Jan 11 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
Win2000+Apache+MySql+PHP4+PERL安装使用小结
2006/10/09 PHP
PHP中的静态变量及static静态变量使用详解
2015/11/05 PHP
PHP 获取客户端 IP 地址的方法实例代码
2018/11/11 PHP
Javascript异步编程的4种方法让你写出更出色的程序
2013/01/17 Javascript
解析window.open的使用方法总结
2013/06/19 Javascript
Node.js 的异步 IO 性能探讨
2014/10/08 Javascript
JavaScript实现自动变换表格边框颜色
2015/05/08 Javascript
js实现的后台左侧管理菜单代码
2015/09/11 Javascript
gameboy网页闯关游戏(riddle webgame)--仿微信聊天的前端页面设计和难点
2016/02/21 Javascript
js实现数组去重方法及效率?Ρ? target=
2017/02/14 Javascript
JS+DIV实现的卷帘效果示例
2017/03/22 Javascript
AngularJs导出数据到Excel的示例代码
2017/08/11 Javascript
详解JS中的柯里化(currying)
2017/08/17 Javascript
Node使用Sequlize连接Mysql报错:Access denied for user ‘xxx’@‘localhost’
2018/01/03 Javascript
详解微信小程序开发(项目从零开始)
2019/06/06 Javascript
ES6 let和const定义变量与常量的应用实例分析
2019/06/27 Javascript
vue实现桌面向网页拖动文件的示例代码(可显示图片/音频/视频)
2021/03/01 Vue.js
python之文件的读写和文件目录以及文件夹的操作实现代码
2016/08/28 Python
Python os.access()用法实例
2019/02/18 Python
Pyqt5如何让QMessageBox按钮显示中文示例代码
2019/04/11 Python
Win10系统下安装labelme及json文件批量转化方法
2019/07/30 Python
Python实现点云投影到平面显示
2020/01/18 Python
如何使用PyCharm将代码上传到GitHub上(图文详解)
2020/04/27 Python
Keras - GPU ID 和显存占用设定步骤
2020/06/22 Python
tensorflow下的图片标准化函数per_image_standardization用法
2020/06/30 Python
Python unittest生成测试报告过程解析
2020/09/08 Python
总结30个CSS3选择器
2017/04/13 HTML / CSS
墨尔本照明批发商店:Mica Lighting
2017/12/28 全球购物
自荐信怎么写好
2013/11/11 职场文书
元旦联欢会感言
2014/03/04 职场文书
小学学校评估方案
2014/06/08 职场文书
2014年保洁员工作总结
2014/11/19 职场文书
公司2014年度工作总结
2014/12/10 职场文书
资金申请报告范文
2015/05/14 职场文书
郭明义观后感
2015/06/08 职场文书
电脑关机速度很慢怎么办 提升电脑关机速度设置教程
2022/04/08 数码科技