vue按需加载实例详解


Posted in Javascript onSeptember 06, 2019

vue-router配置路由,使用vue的异步组件技术,可以实现按需加载。这种方式下一个组件生成一个js文件

用例:

{
path: '/promisedemo',   name: 'PromiseDemo',   component: resolve => require(['../components/PromiseDemo'], resolve)
}

es提案的import() (推荐)

webpack官方文档:webpack中使用import()

vue官方文档:路由懒加载(使用import())

用例:

// 下面2行代码,没有指定webpackChunkName,每个组件打包成一个js文件。 const ImportFuncDemo1 = () => import('../components/ImportFuncDemo1') const ImportFuncDemo2 = () => import('../components/ImportFuncDemo2') // 下面2行代码,指定了相同的webpackChunkName,会合并打包成一个js文件。 // const ImportFuncDemo = () => import(/* webpackChunkName: 'ImportFuncDemo' */ '../components/ImportFuncDemo') // const ImportFuncDemo2 = () => import(/* webpackChunkName: 'ImportFuncDemo' */ '../components/ImportFuncDemo2') export default new Router({   routes: [     {       path: '/importfuncdemo1',       name: 'ImportFuncDemo1',       component: ImportFuncDemo1     },     {       path: '/importfuncdemo2',       name: 'ImportFuncDemo2',       component: ImportFuncDemo2     }   ] })

webpack提供的require.ensure()

vue-router配置路由,使用webpack的require.ensure技术,也可以实现按需加载。

这种情况下,多个路由指定相同的chunkName,会合并打包成一个js文件。

举例如下:

{   path: '/promisedemo',   name: 'PromiseDemo',   component: resolve => require.ensure([], () => resolve(require('../components/PromiseDemo')), 'demo') }, {   path: '/hello',   name: 'Hello',   // component: Hello   component: resolve => require.ensure([], () => resolve(require('../components/Hello')), 'demo') }

以上就是本次介绍的全部知识点内容,感谢大家的学习和对三水点靠木的支持。

Javascript 相关文章推荐
javascript应用:Iframe自适应其加载的内容高度
Apr 10 Javascript
google jQuery 引用文件,jQuery 引用地址集合(jquery 1.2.6至jquery1.5.2)
Apr 24 Javascript
JavaScript的设计模式经典之代理模式
Feb 24 Javascript
JS实现的多张图片轮流播放幻灯片效果
Jul 22 Javascript
BootStrap modal模态弹窗使用小结
Oct 26 Javascript
轻松理解Javascript变量的相关问题
Jan 20 Javascript
vuejs 制作背景淡入淡出切换动画的实例
Sep 01 Javascript
es6基础学习之解构赋值
Dec 10 Javascript
vue组件间通信六种方式(总结篇)
May 15 Javascript
js键盘事件实现人物的行走
Jan 17 Javascript
Element Backtop回到顶部的具体使用
Jul 27 Javascript
JS继承实现方法及优缺点详解
Sep 02 Javascript
详解Nuxt.js中使用Element-UI填坑
Sep 06 #Javascript
nuxt踩坑之Vuex状态树的模块方式使用详解
Sep 06 #Javascript
Nuxt使用Vuex的方法示例
Sep 06 #Javascript
vue中input的v-model清空操作
Sep 06 #Javascript
nuxt框架中对vuex进行模块化设置的实现方法
Sep 06 #Javascript
layui 表格操作列按钮动态显示的实现方法
Sep 06 #Javascript
基于Vue和Element-Ui搭建项目的方法
Sep 06 #Javascript
You might like
php for 循环语句使用方法详细说明
2010/05/09 PHP
php使用fputcsv()函数csv文件读写数据的方法
2015/01/06 PHP
php无限分类使用concat如何实现
2015/11/05 PHP
给moz-firefox下添加IE方法和属性
2007/04/10 Javascript
初窥JQuery(二) 事件机制(1)
2010/11/25 Javascript
Jquery.Form 异步提交表单的简单实例
2014/03/03 Javascript
Javascript基础教程之函数对象和属性
2015/01/18 Javascript
基于BootStrap Metronic开发框架经验小结【一】框架总览及菜单模块的处理
2016/05/12 Javascript
JavaScript实现的数字与字符串转换功能示例
2017/08/23 Javascript
AngularJS select设置默认值的实现方法
2017/08/25 Javascript
JS实现瀑布流布局
2017/10/21 Javascript
vue加载完成后的回调函数方法
2018/09/07 Javascript
[44:10]2018DOTA2亚洲邀请赛 4.5 淘汰赛 EG vs VP 第一场
2018/04/06 DOTA
Python系统监控模块psutil功能与经典用法分析
2018/05/24 Python
python 平衡二叉树实现代码示例
2018/07/07 Python
Python设计模式之抽象工厂模式原理与用法详解
2019/01/15 Python
python操作kafka实践的示例代码
2019/06/19 Python
python挖矿算力测试程序详解
2019/07/03 Python
Python实现直方图均衡基本原理解析
2019/08/08 Python
关于numpy.where()函数 返回值的解释
2019/12/06 Python
python中的错误如何查看
2020/07/08 Python
anaconda3安装及jupyter环境配置全教程
2020/08/24 Python
亚马逊墨西哥站:Amazon.com.mx
2018/08/26 全球购物
联想印度官方网上商店:Lenovo India
2019/08/24 全球购物
最好的商品表达自己:Cafepress
2019/09/04 全球购物
东方通信股份有限公司VC面试题
2014/08/27 面试题
学生会主席演讲稿
2014/04/25 职场文书
公共机构节能宣传周活动总结
2014/07/09 职场文书
信用卡工作证明模板
2014/09/14 职场文书
七年级上册语文教学计划
2015/01/22 职场文书
党员带头倡议书
2015/04/29 职场文书
刑事起诉书范文
2015/05/19 职场文书
详解JS WebSocket断开原因和心跳机制
2021/05/07 Javascript
mysql timestamp比较查询遇到的坑及解决
2021/11/27 MySQL
Nginx实现会话保持的两种方式
2022/03/18 Servers
Python通过loop.run_in_executor执行同步代码 同步变为异步
2022/04/11 Python