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 相关文章推荐
js arguments.callee的应用代码
May 07 Javascript
向大师们学习Javascript(视频与PPT)
Dec 27 Javascript
AngularJS入门教程之Hello World!
Dec 06 Javascript
jQuery控制文本框只能输入数字和字母及使用方法
May 26 Javascript
将html页面保存成图片,图片写入pdf的实现方法(推荐)
Sep 17 Javascript
vue.js获取数据库数据实例代码
May 26 Javascript
angular select 默认值设置方法
Jun 23 Javascript
js禁止表单重复提交
Aug 29 Javascript
jQuery中元素选择器(element)简单用法示例
May 14 jQuery
详解Element 指令clickoutside源码分析
Feb 15 Javascript
js验证身份证号码记录的方法
Apr 26 Javascript
Vue中 axios delete请求参数操作
Aug 25 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
BBS(php & mysql)完整版(七)
2006/10/09 PHP
php adodb介绍
2009/03/19 PHP
PHP下利用shell后台运行PHP脚本,并获取该脚本的Process ID的代码
2011/09/19 PHP
PHP中加密解密函数与DES加密解密实例
2014/10/17 PHP
PHP中通过fopen()函数访问远程文件示例
2014/11/18 PHP
php使用pdo连接并查询sql数据库的方法
2014/12/24 PHP
PHP排序算法类实例
2015/06/17 PHP
thinkPHP中多维数组的遍历方法
2016/01/09 PHP
PHP实现普通hash分布式算法简单示例
2018/08/06 PHP
html的DOM中document对象forms集合用法实例
2015/01/21 Javascript
jQuery实现鼠标双击Table单元格变成文本框及输入内容后更新到数据库的方法
2015/11/25 Javascript
AngularJS ng-app 指令实例详解
2016/07/30 Javascript
每个程序员都需要学习 JavaScript 的7个理由小结
2016/09/03 Javascript
浅析JavaScript中的平稳退化(graceful degradation)
2017/07/24 Javascript
原生JS实现 MUI导航栏透明渐变效果
2017/11/07 Javascript
react 创建单例组件的方法
2018/04/26 Javascript
Node.js进阶之核心模块https入门
2018/05/23 Javascript
JavaScript实现创建自定义对象的常用方式总结
2018/07/09 Javascript
jQuery事件委托代码实践详解
2019/06/21 jQuery
python 文件操作api(文件操作函数)
2016/08/28 Python
python实现杨辉三角思路
2017/07/14 Python
详解用Python处理HTML转义字符的5种方式
2017/12/27 Python
python实现外卖信息管理系统
2018/01/11 Python
pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法
2019/06/20 Python
Python Matplotlib绘图基础知识代码解析
2020/08/31 Python
CSS3教程(8):CSS3透明度指南
2009/04/02 HTML / CSS
使用CSS3的box-sizing属性解决div宽高被内边距撑开的问题
2016/06/28 HTML / CSS
HTML5页面嵌入小程序没有返回按钮及返回页面空白的问题
2020/05/28 HTML / CSS
德国电子商城:ComputerUniverse
2017/04/21 全球购物
综治宣传月活动总结
2014/04/28 职场文书
欠款起诉书范文
2015/05/19 职场文书
2016年社区“我们的节日·中秋节”活动总结
2016/04/05 职场文书
私人贷款担保书该怎么写呢?
2019/07/02 职场文书
使用numpy实现矩阵的翻转(flip)与旋转
2021/06/03 Python
缓存替换策略及应用(以Redis、InnoDB为例)
2021/07/25 Redis
Python批量解压&压缩文件夹的示例代码
2022/04/04 Python