vue-router懒加载的3种方式汇总


Posted in Vue.js onFebruary 28, 2021

未使用懒加载

import Vue from 'vue';
import Router from 'vue-router';
import HelloWorld from '@components/HelloWorld';
Vue.use(Router);
export default new Router({
routes:[
	{path:'./',
	name:'HelloWorld',
	component:HelloWorld
	}
]
})

vue异步组件

component:resolve=>{reuqire([‘需要加载的路由地址']),resolve)

import Vue from 'vue';
import Router from 'vue-router';
const HelloWorld=resolve=>{require(["@/components/HelloWorld"],resolve}
Vue.use(Router);
export default new Router({
routes:[
	{path:'./',
	name:'HelloWorld',
	component:HelloWorld
	}
]
})

ES6的import()

import Vue from 'vue';
import Router from 'vue-router';
import HelloWorld=()=>import('@/components/HelloWorld');
Vue.use('Router')
export default new Router({
	routes:[{
	{path:'./',
	name:'HelloWorld',
	component:HelloWorld
	}
	}]
})

webpack的require.ensure()

require.ensure可实现按需加载资源,包括js,css等。他会给里面require的文件单独打包,不会和主文件打包在一起。

第一个参数是数组,表明第二个参数里需要依赖的模块,这些会提前加载。

第二个是回调函数,在这个回调函数里面require的文件会被单独打包成一个chunk,不会和主文件打包在一起,这样就生成了两个chunk,第一次加载时只加载主文件。

第三个参数是错误回调。

第四个参数是单独打包的chunk的文件名

import Vue from 'vue';
import Router from 'vue-router';
const HelloWorld=resolve=>{
		require.ensure(['@/components/HelloWorld'],()=>{
			resolve(require('@/components/HelloWorld'))
		})
	}
Vue.use('Router')
export default new Router({
	routes:[{
	{path:'./',
	name:'HelloWorld',
	component:HelloWorld
	}
	}]
})

总结

到此这篇关于vue-router懒加载的3种方式的文章就介绍到这了,更多相关vue-router懒加载内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Vue.js 相关文章推荐
vue3.0+vue-router+element-plus初实践
Dec 02 Vue.js
vue中如何自定义右键菜单详解
Dec 08 Vue.js
vue实现购物车的小练习
Dec 21 Vue.js
基于vue+echarts数据可视化大屏展示的实现
Dec 25 Vue.js
vue中配置scss全局变量的步骤
Dec 28 Vue.js
vue-quill-editor插入图片路径太长问题解决方法
Jan 08 Vue.js
如何在vue中使用video.js播放m3u8格式的视频
Feb 01 Vue.js
Vue中避免滥用this去读取data中数据
Mar 02 Vue.js
Vue3.0 手写放大镜效果
Jul 25 Vue.js
Vue鼠标滚轮滚动切换路由效果的实现方法
Aug 04 Vue.js
vue本地构建热更新卡顿的问题“75 advanced module optimization”完美解决方案
Aug 05 Vue.js
Vue Element plus使用方法梳理
Dec 24 Vue.js
Vue SPA 首屏优化方案
Feb 26 #Vue.js
vue 动态添加的路由页面刷新时失效的原因及解决方案
Feb 26 #Vue.js
vue项目配置 webpack-obfuscator 进行代码加密混淆的实现
Feb 26 #Vue.js
vue中h5端打开app(判断是安卓还是苹果)
Feb 26 #Vue.js
Vue基本指令实例图文讲解
Feb 25 #Vue.js
vue常用高阶函数及综合实例
Feb 25 #Vue.js
详解vite+ts快速搭建vue3项目以及介绍相关特性
Feb 25 #Vue.js
You might like
PHP脚本的10个技巧(5)
2006/10/09 PHP
PHP对表单提交特殊字符的过滤和处理方法汇总
2014/02/18 PHP
PHP与MYSQL中UTF8 中文排序示例代码
2014/10/23 PHP
php+ajax实现的点击浏览量加1
2015/04/16 PHP
PHP单例模式是什么 php实现单例模式的方法
2016/05/14 PHP
Redis使用Eval多个键值自增的操作实例
2016/11/04 PHP
详解PHP多个进程配合redis的有序集合实现大文件去重
2019/03/06 PHP
javascript div 遮罩层封锁整个页面
2009/07/10 Javascript
用JS实现一个TreeMenu效果分享
2011/08/28 Javascript
StringTemplate遇见jQuery冲突的解决方法
2011/09/22 Javascript
node.js中的buffer.fill方法使用说明
2014/12/14 Javascript
简单总结JavaScript中的String字符串类型
2016/05/26 Javascript
微信小程序中显示html格式内容的方法
2017/04/25 Javascript
Bootstrap组件之下拉菜单,多级菜单及按钮布局方法实例
2017/05/25 Javascript
angularjs项目的页面跳转如何实现(5种方法)
2017/05/25 Javascript
对layer弹出框中icon数字参数的说明介绍
2019/09/04 Javascript
vue与django集成打包的实现方法
2019/11/11 Javascript
[02:41]2015国际邀请赛中国区预选赛观战指南
2015/05/20 DOTA
[36:33]2018DOTA2亚洲邀请赛 4.3 突围赛 EG vs Newbee 第二场
2018/04/04 DOTA
详解Python中的type()方法的使用
2015/05/21 Python
python算法演练_One Rule 算法(详解)
2017/05/17 Python
python隐藏终端执行cmd命令的方法
2019/06/24 Python
详解Python 多线程 Timer定时器/延迟执行、Event事件
2019/06/27 Python
简单了解python的一些位运算技巧
2019/07/13 Python
Python 元组操作总结
2019/09/18 Python
Python爬虫爬取煎蛋网图片代码实例
2019/12/16 Python
详解python3 GUI刷屏器(附源码)
2021/02/18 Python
AmazeUI框架搭建的方法步骤(图文)
2020/08/17 HTML / CSS
美国最大的无人机经销商:DroneNerds
2018/03/20 全球购物
财务部出纳岗位职责
2013/12/22 职场文书
幼儿教师工作感言
2014/02/14 职场文书
广告设计专业毕业生自我鉴定
2014/09/27 职场文书
主持人开场白台词
2015/05/29 职场文书
团结友爱主题班会
2015/08/13 职场文书
学习雷锋主题班会
2015/08/14 职场文书
MySQL 数据类型详情
2021/11/11 MySQL