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 css在IE和Firefox中区别分析
Feb 18 Javascript
javascript 设置文本框中焦点的位置
Nov 20 Javascript
学习面向对象之面向对象的基本概念:对象和其他基本要素
Nov 30 Javascript
JQuery 图片的展开和伸缩实例讲解
Apr 18 Javascript
javascript预加载图片、css、js的方法示例介绍
Oct 14 Javascript
jquery实现邮箱自动补全功能示例分享
Feb 17 Javascript
js+CSS实现弹出居中背景半透明div层的方法
Feb 26 Javascript
Angularjs修改密码的实例代码
May 26 Javascript
Cocos2d实现刮刮卡效果
Dec 20 Javascript
小程序实现多列选择器
Feb 15 Javascript
零基础之Node.js搭建API服务器的详解
Mar 08 Javascript
JS Thunk 函数的含义和用法实例总结
Apr 08 Javascript
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生成随机密码的几种方法
2011/01/17 PHP
PHP面向接口编程 耦合设计模式 简单范例
2011/03/23 PHP
深入了解 register_globals (附register_globals=off 网站打不开的解决方法)
2012/06/27 PHP
PHP中array_merge和array相加的区别分析
2013/06/17 PHP
php导出csv数据在浏览器中输出提供下载或保存到文件的示例
2014/04/24 PHP
Smarty模板变量与调节器实例详解
2019/07/20 PHP
firefox下对ajax的onreadystatechange的支持情况分析
2009/12/14 Javascript
location.search在客户端获取Url参数的方法
2010/06/08 Javascript
script的async属性以非阻塞的模式加载脚本
2013/01/15 Javascript
Javascript 拖拽的一些高级的应用(逐行分析代码,让你轻松了拖拽的原理)
2015/01/23 Javascript
jQuery实现跨域iframe接口方法调用
2015/03/14 Javascript
JavaScript Sort 的一个错误用法示例
2015/03/20 Javascript
通过Jquery.cookie.js实现展示浏览网页的历史记录超管用
2015/10/23 Javascript
JavaScript中的Number数字类型学习笔记
2016/05/26 Javascript
彻底学会Angular.js中的transclusion
2017/03/12 Javascript
JavaScript从原型到原型链深入理解
2019/06/03 Javascript
JavaScript遍历数组和对象的元素简单操作示例
2019/07/09 Javascript
微信小程序npm引入vant-weapp的踩坑记录
2019/08/01 Javascript
[52:20]VP vs VG Supermajor小组赛 B组胜者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
Python实现登录人人网并抓取新鲜事的方法
2015/05/11 Python
Python实现数据库并行读取和写入实例
2017/06/09 Python
Python编译成.so文件进行加密后调用的实现
2019/12/23 Python
python3发送request请求及查看返回结果实例
2020/04/30 Python
树莓派4B安装Tensorflow的方法步骤
2020/07/16 Python
python获取本周、上周、本月、上月及本季的时间代码实例
2020/09/08 Python
浅析rem和em和px vh vw和% 移动端长度单位
2016/04/28 HTML / CSS
联想哥伦比亚网上商城:Lenovo Colombia
2017/01/10 全球购物
阿迪达斯新加坡官方网站:adidas新加坡
2019/12/06 全球购物
北京麒麟网信息技术有限公司网络游戏测试面试题
2013/09/28 面试题
学前教育教师求职自荐信
2013/09/22 职场文书
新闻记者个人求职的自我评价
2013/11/28 职场文书
竞争上岗演讲稿
2014/01/05 职场文书
机械系毕业生求职信
2014/05/28 职场文书
试用期转正后的自我评价
2014/09/21 职场文书
数学教师个人工作总结
2015/02/06 职场文书
JS精髓原型链继承及构造函数继承问题纠正
2022/06/16 Javascript