位置: 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)

  • 正确看待论坛发帖的“限制与自由”(如何理性看待当前的网络舆论资讯和事件)

    正确看待论坛发帖的“限制与自由”(如何理性看待当前的网络舆论资讯和事件)

  • 电脑黑屏显示英文字幕(电脑黑屏显示英文和数字怎么办)

    电脑黑屏显示英文字幕(电脑黑屏显示英文和数字怎么办)

  • 知乎可以通过手机号找人吗(知乎可以搜索手机联系人吗)

    知乎可以通过手机号找人吗(知乎可以搜索手机联系人吗)

  • 华为p20录音在哪里(华为p20的录音功能在哪)

    华为p20录音在哪里(华为p20的录音功能在哪)

  • 内存不兼容的表现(内存不兼容什么意思)

    内存不兼容的表现(内存不兼容什么意思)

  • 电脑恢复出厂设置会变快吗(电脑恢复出厂设置需要重新装系统吗)

    电脑恢复出厂设置会变快吗(电脑恢复出厂设置需要重新装系统吗)

  • 为什么开通不了情侣空间(为什么开通不了白条分分卡)

    为什么开通不了情侣空间(为什么开通不了白条分分卡)

  • 天猫退货上门取件 要给钱吗(天猫退货上门取件可以改地址吗)

    天猫退货上门取件 要给钱吗(天猫退货上门取件可以改地址吗)

  • 电脑删除文件显示在另一个程序打开怎么办(电脑删除文件显示文件正在使用)

    电脑删除文件显示在另一个程序打开怎么办(电脑删除文件显示文件正在使用)

  • amd rx580是什么水平(amd的rx580)

    amd rx580是什么水平(amd的rx580)

  • 华为小艺能不能改名字(华为小艺能不能自定义声音)

    华为小艺能不能改名字(华为小艺能不能自定义声音)

  • 华为mate30pro和华为mate30有什么区别(华为mate30pro和华为p50pro哪个好)

    华为mate30pro和华为mate30有什么区别(华为mate30pro和华为p50pro哪个好)

  • 企业微信怎么用(企业微信怎么用引用功能)

    企业微信怎么用(企业微信怎么用引用功能)

  • 华为手机锁定后怎么解锁(华为手机锁定后会如何)

    华为手机锁定后怎么解锁(华为手机锁定后会如何)

  • 微博怎么看访客名单(微博怎么看访客浏览记录)

    微博怎么看访客名单(微博怎么看访客浏览记录)

  • 小米智能锁sn码在哪(小米智能锁sn码是什么意思)

    小米智能锁sn码在哪(小米智能锁sn码是什么意思)

  • 华为智慧能力开不开(华为智慧能力开关)

    华为智慧能力开不开(华为智慧能力开关)

  • 拼多多新品标签怎么来(拼多多新品标签突然消失)

    拼多多新品标签怎么来(拼多多新品标签突然消失)

  • 苹果11系列都是双卡双待吗(苹果11系列都是lcd屏幕吗)

    苹果11系列都是双卡双待吗(苹果11系列都是lcd屏幕吗)

  • 抖音忘了号了怎么办(抖音号忘记了怎么办)

    抖音忘了号了怎么办(抖音号忘记了怎么办)

  • 新版qq怎么关闭qq电话(新版qq怎么关闭清爽模式)

    新版qq怎么关闭qq电话(新版qq怎么关闭清爽模式)

  • 华为sos紧急联络怎么设置(华为sos紧急联络怎么设置给110打电话)

    华为sos紧急联络怎么设置(华为sos紧急联络怎么设置给110打电话)

  • Linux 系统内核的调试详解(linux内核有什么作用)

    Linux 系统内核的调试详解(linux内核有什么作用)

  • 织梦数据库类$dsql使用方法(安装织梦数据库连接不上)

    织梦数据库类$dsql使用方法(安装织梦数据库连接不上)

  • 个体工商户核定征收
  • 企业的罚款支出包括违约金吗
  • 报关单完成出口后收汇期限4月30日
  • 水电费收据可以税前扣除吗
  • 以固定资产投资的会计处理
  • 事业单位无形资产摊销年限
  • 库存商品余额在借方
  • 企业社会保险登记表
  • 其他应付款长期挂账如何处理
  • 什么样的情况可以补缴社保
  • 企业合并的会计方法选择
  • 现金账记错了该如何改正
  • 材料成本差异怎么理解
  • 公司注销时认缴不到位怎么办
  • 收就业局稳岗补贴做账
  • 多交增值税怎么调整
  • 差额纳税的会计处理
  • 91开头的税号是什么
  • 不管金税四期上线与否,税务严查一刻也没有放松!
  • 税收筹划要注意哪些问题
  • 劳务派遣公司会扣工资吗
  • 建筑行业印花税税率
  • 怎样申请退税费
  • 成本是否有含税金额
  • 小规模纳税人一个月能开多少税票
  • 怎么把公司账户的钱转到个人账号
  • 企业分红需要缴纳什么税
  • 设备维修费增值税
  • 在建工程明细科目设置
  • 山茶花的养殖方法盆栽
  • 预提费用是啥
  • 贴现息等于什么
  • 简单谈谈中国法律史的感受
  • if.else
  • 库存现金被盗会怎么样
  • php实现文件的下载
  • 未认证用户是什么意思
  • php正则函数内容匹配
  • 小规模纳税人缴税的分录
  • element-ui 表格
  • ssh非交互式登录
  • repo命令详解
  • php安装教程
  • python3 argparse
  • wordpress jquery
  • 第三方车主
  • jvm调优思路
  • 其它应付款的账户是什么
  • 预付款已经开了发票要怎么做账
  • 以前年度未结转
  • 消费税的特点及纳税环节
  • 固定资产进项税率
  • 发票失控进项转出所得税
  • 押金退还需要多久
  • 弥补亏损怎么做账
  • 专票遗失没有认证能用吗
  • 产品成本包括哪几个部分
  • 存出投资款应计入什么科目
  • sqlbean
  • windows预览版
  • 多台电脑ip地址设置
  • ubuntu恢复rm –rf删除的文件
  • freebsd 配置ip
  • etcfstab文件修改
  • centos设置hostname
  • win7如何删除网络上的其它计算机
  • linux wordpress gzip压缩开启方法
  • memory在电脑里是什么意思
  • linux实用技巧
  • win7如何清理c盘空间不影响系统
  • opengl programming guide
  • shell脚本转换文件编码
  • 使用Raygun对Node.js应用进行错误处理的方法
  • javascript简述
  • Python制作钟表代码
  • 在python中通过什么语句创建一个空集合
  • python中创建类对象
  • js模拟点击alert()确定
  • 烟叶税属于中央税还是地方税
  • 苏州市区公司可以在园区买社保吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设