位置: IT常识 - 正文

路由懒加载及实现方式(vue-router)(路由加载的几种方式)

编辑:rootadmin
路由懒加载及实现方式(vue-router)

推荐整理分享路由懒加载及实现方式(vue-router)(路由加载的几种方式),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:路由懒加载实现的原理,路由懒加载有三种方式的区别,路由懒加载实现,路由懒加载有三种方式的区别,路由懒加载实现的原理,路由懒加载实现方法,路由懒加载实现的原理,路由懒加载及实现方式,内容如对您有帮助,希望把文章链接给更多的朋友!

vue-router路由懒加载及实现方式。

文章目录

前言

一、路由懒加载

二、实现路由懒加载

1.Vue异步组件(异步加载)

2.推荐方式-ES6的import()

 3.webpack提供的require.ensure()实现懒加载

前言

什么是路由懒加载?--延迟加载,在需要的时候才会进行加载。

一、路由懒加载

         我们在路由中通常会定义很多不同的页面。如果不应用懒加载的话,很多页面都会打包到同一个js文件中,文件将会异常的大。造成进入首页时,需要加载的内容过多,时间过长,在浏览器中可能会出现短暂的空白页,从而降低用户体验,而运用路由懒加载是将各个模块分开打包,用户查看的时候再加载对应的模块,减少加载用时。

也就是说:一开始进入页面时不需要一次性把资源都加载完,需要时在加载对应的资源。 

二、实现路由懒加载

 路由懒加载的主要作用是将 路由对应的组件打包成一个个的js代码块。只有在这个路由被访问到的时候,才会加载对应组件的代码块。

//非路由懒加载import Vue from 'vue'import Router from 'vue-router'import Home from '@/components/Home'import Login from '@/components/Login'import New from '@/components/New'import List from '@/components/List'......routes:[ {path:'/Login',name:'Login',component:Login}, {path:'/',name:'Home',component:Home}, ...]

vue实现路由懒加载的三种方式: 

Vue异步组件ES6的import()webpack的require.ensure() 1.Vue异步组件(异步加载)

vue-router 配置路由,使用vue的异步组件技术,可以实现懒加载,但是这种情况是一个组件会生成一个js文件。

路由懒加载及实现方式(vue-router)(路由加载的几种方式)

component:resolve => require(['需要加载的组件地址'],resolve) 

{path:'/login',name:'Login', component:resolve => require(['@/components/Login'],resolve)},{path:'/home',name:'Home', component:resolve => require(['@/components/Home'],resolve), children:[ {path:'/new',name:'New', component:resolve =>require(['@/components/New'],resolve)}, {path:'/list',name:'List', component:resolve => require(['@/components/List'],resolve)} ] }2.推荐方式-ES6的import()

const 组件名 = () => import('组件路径')

//下面没有指定webpackChunkName,每个组件打包成一个js文件const Foo = () => import('../components/Foo')const Aoo = () => import('../components/Aoo')

 指定相同的webpackChunkName,会合并打包成一个js文件

const Foo = () => import(/*webpackChunkName:'ImportFuncDemo'*/,'../components/Foo');const Aoo - () => import(/*webpackChunkName:'ImportFuncDemo'*/,'../components/Aoo')...{path:'/Foo',name:'Foo',component:Foo},{path:'/Aoo',name:'Aoo',component:Aoo},{path:'/Login',name:'Login', component: ()=>import(/*webpackChunkName:"ImportFuncDemo"*/,'../compontents/Login')}

 上面代码中,webpackChunkName值相同的会打包成一个js文件

 3.webpack提供的require.ensure()实现懒加载

vue-router 配置路由,使用webpack的require.ensure技术,可以实现懒加载,这种情况下,多个路由指定相同的chunkName,会合并打包成一个js文件。

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

{path:'/home',name:'home',component:r=> require.ensure([],()=>r(require('@/components/home')),'funcDemo')},{path:'/new',name:'new',component:r=> require.ensure([],()=>r(require('@/components/new')),'funcDemo')},{path:'/list',name:'list',component:r=> require.ensure([],()=>r(require('@/components/list')),'listDemo')},

注:r就是resolve 

const list = r => require.ensure([],()=>r(require('组件地址')),'list') 

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

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

第三个参数是错误回调。 

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

const Coo = resolve=>{ require.ensure([],()=>{resolve(require('@/components/List'))})}...{path:'/list',name:'List',component:Coo}
本文链接地址:https://www.jiuchutong.com/zhishi/298718.html 转载请保留说明!

上一篇:遥感图像超分辨重建综述(遥感图像超分辨率 坑)

下一篇:训练自己的GPT2-Chinese模型(训练自己的GPT)

  • 苹果13怎么设置微信加密(苹果13怎么设置壁纸和锁屏)

    苹果13怎么设置微信加密(苹果13怎么设置壁纸和锁屏)

  • iphone备忘录转长图(苹果备忘录转为长图片需要的软件)

    iphone备忘录转长图(苹果备忘录转为长图片需要的软件)

  • 电脑主机按钮坏了怎么开电脑(电脑主机按钮坏了 如何打开电脑)

    电脑主机按钮坏了怎么开电脑(电脑主机按钮坏了 如何打开电脑)

  • 电容麦克风和普通麦克风的区别(电容麦克风和普通耳麦微信语音有区别吗)

    电容麦克风和普通麦克风的区别(电容麦克风和普通耳麦微信语音有区别吗)

  • 腾讯会员包季几个月(腾讯会员包季划算还是包月)

    腾讯会员包季几个月(腾讯会员包季划算还是包月)

  • 手机可以解压zip文件吗(手机可以解压压缩文件吗)

    手机可以解压zip文件吗(手机可以解压压缩文件吗)

  • 小米手机系列分类(小米手机系列分几个档次)

    小米手机系列分类(小米手机系列分几个档次)

  • 抖音视频限制分享是啥意思(抖音1到5分钟视频权限)

    抖音视频限制分享是啥意思(抖音1到5分钟视频权限)

  • 高压变频器的工作原理(高压变频器的工作特性)

    高压变频器的工作原理(高压变频器的工作特性)

  • qq空间怎么上传原画质视频(qq空间怎么上传不了照片了)

    qq空间怎么上传原画质视频(qq空间怎么上传不了照片了)

  • 小米蓝牙耳机199和399的区别(小米蓝牙耳机怎么重新配对)

    小米蓝牙耳机199和399的区别(小米蓝牙耳机怎么重新配对)

  • 韩剧tv在电视机上叫什么软件

    韩剧tv在电视机上叫什么软件

  • airpods电量显示不准怎么办(airpods电量显示忽高忽低)

    airpods电量显示不准怎么办(airpods电量显示忽高忽低)

  • iphonexr是广角摄像头吗(苹果xr是广角相机吗)

    iphonexr是广角摄像头吗(苹果xr是广角相机吗)

  • mga82ch a是什么型号(mqa82za/a是什么型号)

    mga82ch a是什么型号(mqa82za/a是什么型号)

  • 华为青春版10怎么连拍(华为青春版10怎么刷机)

    华为青春版10怎么连拍(华为青春版10怎么刷机)

  • 微信申诉进行中要多久(微信申诉进行中两天了)

    微信申诉进行中要多久(微信申诉进行中两天了)

  • 华为微信支付能免单吗(华为怎么微信支付)

    华为微信支付能免单吗(华为怎么微信支付)

  • 魅族16thplus多少瓦充电(魅族16thplus多少钱)

    魅族16thplus多少瓦充电(魅族16thplus多少钱)

  • 淘宝个人主页在哪里(2021淘宝个人主页在哪里)

    淘宝个人主页在哪里(2021淘宝个人主页在哪里)

  • 我酸了是什么意思(我酸了如何幽默回复)

    我酸了是什么意思(我酸了如何幽默回复)

  • 淘最热点怎么提现(淘最热点能提现吗)

    淘最热点怎么提现(淘最热点能提现吗)

  • 小米mix3无线充电第一次怎么用(小米mix3无线充电器多少瓦)

    小米mix3无线充电第一次怎么用(小米mix3无线充电器多少瓦)

  • 6p发热严重解决方法(6p手机发烫严重具体什么原因)

    6p发热严重解决方法(6p手机发烫严重具体什么原因)

  • 微信退款成功但钱没到账(微信退款成功但是没到银行卡里面)

    微信退款成功但钱没到账(微信退款成功但是没到银行卡里面)

  • 花瓣网如何保存图片(花瓣网如何保存素材)

    花瓣网如何保存图片(花瓣网如何保存素材)

  • 在Linux上如何管理加密密钥?管理加密密钥的最佳体验(linux如何管理进程)

    在Linux上如何管理加密密钥?管理加密密钥的最佳体验(linux如何管理进程)

  • python TKinter普通菜单的介绍(python2 tkinter)

    python TKinter普通菜单的介绍(python2 tkinter)

  • 所得税汇算资产总额怎么算
  • 没有购销合同可以开票吗
  • 可以税前扣除的利息费用有哪些
  • 帮别人买交强险,受益人是我,有影响吗
  • 印花税小于1元显示无需申报
  • 吊车租赁可以开6个点专票吗
  • 借款利息是否可以转为本金
  • 企业接收捐赠计入什么科目
  • 行政事业单位收据样本
  • 托收承付销售货物什么意思
  • 简易计征的税率
  • 公司没有发票的做内账,那么支付款从哪里来
  • 税种申报表样表
  • 代扣代缴增值税纳税义务发生时间
  • 专票地址不对可以重开吗
  • 软件开发增值税即征即退2022
  • 1697510552
  • 小规模纳税企业所得税优惠政策
  • 房地产企业申请破产,原来的购房合同还有效吗?
  • 残疾人就业保障金是什么意思啊
  • 苹果iphone支持在哪
  • 财务预算业务制度有哪些
  • 事业单位工资及薪酬好的单位有哪些
  • internet笔记
  • 不征税收入与免税收入的区别
  • php字符串变量
  • PHP:session_cache_expire()的用法_Session函数
  • 存货发生了减值怎么处理
  • 识别税收风险点是什么
  • 如何做好税收风险管理工作
  • 坏账减值准备账务处理
  • 合规检查中检查不了的设备
  • 研发费用加计扣除新税收政策2023
  • 在清算土地增值税销项时,允许扣除的土地价款包括哪些?
  • 资产负债表中应收账款根据什么填列
  • 2021高频前端面试题汇总
  • react usereducer
  • python输入三科成绩
  • 小企业会计准则没有以前年度损益调整科目
  • python中线程可以用在哪些方面
  • day11-Servlet01
  • 常见的垃圾回收器有哪些
  • 分类信息有哪些网站
  • 织梦痣铃表情太到位
  • 对外捐赠非货币性资产的会计处理
  • 公司个人借款如何下账
  • 实收资本变化
  • 应交税费在会计科目的借贷方向
  • 递延所得税资产账务处理
  • 账面价值低于可抵税收
  • 物流辅助服务费属于什么费用
  • 外币交易的账户设置
  • 生产企业支付的房租怎么入账
  • 退回投标保证金在投诉阶段怎么办
  • 固定资产更新改造当月是否计提折旧
  • 公司员工餐费如何做账
  • 企业采用公允价值进行会计核算,所体现的会计质量要求
  • 小企业建账选哪种会计制度
  • SQL语句查询数据量
  • mysql文件存储路径设置
  • 懒癌患者如何自救
  • win7小技巧
  • 怎么才能使牙齿变白
  • imessage对方看了会显示已读吗
  • java开发经常出差合理吗
  • ubuntu安装office2019
  • elf.exe是什么程序
  • linux vps 教程
  • windows 如何解密
  • javascript 浏览器
  • unity3d documentation
  • 计算机图形学和计算机视觉的区别
  • nodejs快速入门
  • jquery的心得
  • node drain事件
  • javascript web开发
  • 详解Python装饰器由浅入深
  • jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
  • 纳税人有什么影响
  • 广州地税网上社保怎么交
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设