vue实现路由懒加载及组件懒加载的方式


Posted in Javascript onJune 11, 2019

一、为什么要使用路由懒加载

为给客户更好的客户体验,首屏组件加载速度更快一些,解决白屏问题。

二、定义

懒加载简单来说就是延迟加载或按需加载,即在需要的时候的时候进行加载。

三、使用

常用的懒加载方式有两种:即使用vue异步组件 和 ES中的import

1、未用懒加载,vue中路由代码如下

 

  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
          }
         ]
        })

2、vue异步组件实现懒加载

方法如下:component:resolve=>(require(['需要加载的路由的地址']),resolve)

import Vue from 'vue'
import Router from 'vue-router'
/* 此处省去之前导入的HelloWorld模块 */
Vue.use(Router)

export default new Router({
 routes: [
  {
   path: '/',
   name: 'HelloWorld',
   component: resolve=>(require(["@/components/HelloWorld"],resolve))
  }
 ]
})

3、ES 提出的import方法,(------最常用------)

方法如下:const HelloWorld = ()=>import('需要加载的模块地址')

(不加 { } ,表示直接return)

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

四、组件懒加载

 相同与路由懒加载,

1、原来组件中写法

<template>
 <div class="hello">
 <One-com></One-com>
 1111
 </div>
</template>

<script>
import One from './one'
export default {
 components:{
  "One-com":One
 },
 data () {
  return {
   msg: 'Welcome to Your Vue.js App'
  }
 }
}
</script>

2、const方法

<template>
 <div class="hello">
 <One-com></One-com>
 1111
 </div>
</template>

<script>
const One = ()=>import("./one");
export default {
 components:{
  "One-com":One
 },
 data () {
  return {
   msg: 'Welcome to Your Vue.js App'
  }
 }
}
</script>

3、异步方法

<template>
 <div class="hello">
 <One-com></One-com>
 1111
 </div>
</template>

<script>
export default {
 components:{
  "One-com":resolve=>(['./one'],resolve)
 },
 data () {
  return {
   msg: 'Welcome to Your Vue.js App'
  }
 }
}
</script>

五、总结:

路由和组件的常用两种懒加载方式:

1、vue异步组件实现路由懒加载

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

2、es提出的import(推荐使用这种方式)

const HelloWorld = ()=>import('需要加载的模块地址')

总结

以上所述是小编给大家介绍的vue实现路由懒加载及组件懒加载的方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
JS操作图片(增,删,改) 例子
Apr 17 Javascript
node.js中的fs.readFileSync方法使用说明
Dec 15 Javascript
Javascript的闭包详解
Dec 26 Javascript
JavaScript中的object转换成number或string规则介绍
Dec 31 Javascript
使用AOP改善javascript代码
May 01 Javascript
javascript动态创建表格及添加数据实例详解
May 13 Javascript
jQuery Ajax 实例代码 ($.ajax、$.post、$.get)
Apr 29 Javascript
关于js二维数组和多维数组的定义声明(详解)
Oct 02 Javascript
Vue-cli配置打包文件本地使用的教程图解
Aug 02 Javascript
微信小程序实现单选选项卡切换效果
Jun 19 Javascript
浅谈Vue中render中的h箭头函数
Nov 07 Javascript
canvas多重阴影发光效果实现
Apr 20 Javascript
Vue+element 解决浏览器自动填充记住的账号密码问题
Jun 11 #Javascript
Flutter部件内部状态管理小结之实现Vue的v-model功能
Jun 11 #Javascript
JavaScript动态检测密码强度原理及实现方法详解
Jun 11 #Javascript
聊聊Vue 中 title 的动态修改问题
Jun 11 #Javascript
vue+element模态框中新增模态框和删除功能
Jun 11 #Javascript
vue.js中导出Excel表格的案例分析
Jun 11 #Javascript
ES6 Proxy实现Vue的变化检测问题
Jun 11 #Javascript
You might like
将数字格式的计算结果转为汉字格式
2006/10/09 PHP
PHP 字符串 小常识
2009/06/05 PHP
基于PHP5魔术常量与魔术方法的详解
2013/06/13 PHP
解析PHP处理换行符的问题 \r\n
2013/06/13 PHP
php实现购物车功能(下)
2016/01/05 PHP
PHP在linux上执行外部命令的方法
2017/02/06 PHP
PHP网站自动化配置的实现方法(必看)
2017/05/27 PHP
JavaScript 仿关机效果的图片层
2008/12/26 Javascript
js清理Word格式示例代码
2014/02/13 Javascript
JavaScript中最简洁的编码html字符串的方法
2014/10/11 Javascript
JS实现点击文字对应DIV层不停闪动效果的方法
2015/03/02 Javascript
详解JavaScript中void语句的使用
2015/06/04 Javascript
JS实现随机颜色的3种方法与颜色格式的转化
2017/01/05 Javascript
Node.js 使用AngularJS的方法示例
2018/05/11 Javascript
Vue+Jwt+SpringBoot+Ldap完成登录认证的示例代码
2018/05/21 Javascript
JS高级技巧(简洁版)
2018/07/29 Javascript
vue中使用heatmapjs的示例代码(结合百度地图)
2018/09/05 Javascript
微信小程序实现图片上传
2019/05/23 Javascript
[00:31]DOTA2荣耀之路7:Miracle-空血无敌斩
2018/05/31 DOTA
Python中不同进制互相转换(二进制、八进制、十进制和十六进制)
2015/04/05 Python
python插入数据到列表的方法
2015/04/30 Python
python 实现调用子文件下的模块方法
2018/12/07 Python
Python基本socket通信控制操作示例
2019/01/30 Python
Python greenlet和gevent使用代码示例解析
2020/04/01 Python
解决使用python print打印函数返回值多一个None的问题
2020/04/09 Python
python如何求100以内的素数
2020/05/27 Python
pandas数据处理之绘图的实现
2020/06/15 Python
本科生学习总结的自我评价
2013/10/02 职场文书
孝老爱亲模范事迹
2014/01/24 职场文书
会计专业个人自我鉴定
2014/03/21 职场文书
小学校长先进事迹材料
2014/05/13 职场文书
2014年图书馆个人工作总结
2014/12/18 职场文书
三好学生评语大全
2014/12/29 职场文书
JavaScript实现简单图片切换
2021/04/29 Javascript
纯html+css实现打字效果
2021/08/02 HTML / CSS
JS函数式编程实现XDM一
2022/06/16 Javascript