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 相关文章推荐
vue 插槽简介及使用示例
Nov 19 Vue.js
Vue3配置axios跨域实现过程解析
Nov 25 Vue.js
Vue Elenent实现表格相同数据列合并
Nov 30 Vue.js
vue从后台渲染文章列表以及根据id跳转文章详情详解
Dec 14 Vue.js
vue项目中openlayers绘制行政区划
Dec 24 Vue.js
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
Jan 22 Vue.js
如何使用RoughViz可视化Vue.js中的草绘图表
Jan 30 Vue.js
vue路由实现登录拦截
Mar 24 Vue.js
vue-cli4.5.x快速搭建项目
May 30 Vue.js
vue+elementui 实现新增和修改共用一个弹框的完整代码
Jun 08 Vue.js
Vue的过滤器你真了解吗
Feb 24 Vue.js
浅谈Vue的computed计算属性
Mar 21 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并发对MYSQL造成压力的解决方法
2013/02/21 PHP
Zend Studio 实用快捷键一览表(精心整理)
2013/08/10 PHP
php检查日期函数checkdate用法实例
2015/03/19 PHP
Yii2中cookie用法示例分析
2016/07/18 PHP
PHP内存缓存功能memcached示例
2016/10/19 PHP
Laravel统计一段时间间隔的数据方法
2019/10/09 PHP
js定义对象或数组直接量时各浏览器对多余逗号的处理(json)
2011/03/05 Javascript
基于jquery ajax 用户无刷新登录方法详解
2012/04/28 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(四)用地图块拼成大地图
2013/01/23 Javascript
jQuery ajax调用WCF服务实例
2014/07/16 Javascript
jQuery圆形统计图开发实例
2015/01/04 Javascript
原生js获取left值和top值的三种方法
2017/08/02 Javascript
Vue如何从1.0迁移到2.0
2017/10/19 Javascript
vue-cli 如何打包上线的方法示例
2018/05/08 Javascript
浅谈vue3中effect与computed的亲密关系
2019/10/10 Javascript
详解vue-router 动态路由下子页面多页共活的解决方案
2019/12/22 Javascript
js实现简单的打印表格
2020/01/15 Javascript
js如何验证密码强度
2020/03/18 Javascript
vue+element实现图片上传及裁剪功能
2020/06/29 Javascript
[59:15]EG vs LGD 2018国际邀请赛淘汰赛BO3 第一场 8.26
2018/08/29 DOTA
[37:29]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.19
2020/11/19 DOTA
[01:01:52]DOTA2-DPC中国联赛定级赛 SAG vs iG BO3第二场 1月9日
2021/03/11 DOTA
Python tkinter事件高级用法实例
2018/01/31 Python
Python 反转字符串(reverse)的方法小结
2018/02/20 Python
用pycharm开发django项目示例代码
2018/10/24 Python
Python实现对特定列表进行从小到大排序操作示例
2019/02/11 Python
Python学习工具jupyter notebook安装及用法解析
2020/10/23 Python
Python 中Operator模块的使用
2021/01/30 Python
Opencv 图片的OCR识别的实战示例
2021/03/02 Python
canvas绘图按照contain或者cover方式适配并居中显示
2019/02/18 HTML / CSS
世界上最大的街头服饰网站:Karmaloop
2017/02/04 全球购物
澳大利亚领先的孕妇服装品牌:Mamaway
2018/08/14 全球购物
《伯牙绝弦》教学反思
2014/03/02 职场文书
工程部部长岗位职责
2015/02/12 职场文书
小学体育队列队形教学反思
2016/02/16 职场文书
详解使用 CSS prefers-* 规范提升网站的可访问性与健壮性
2021/05/25 HTML / CSS