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 相关文章推荐
jQuery 追加元素的方法如append、prepend、before
Jan 16 Javascript
JavaScript中的全局对象介绍
Jan 01 Javascript
JavaScript 动态加载脚本和样式的方法
Apr 13 Javascript
实现非常简单的js双向数据绑定
Nov 06 Javascript
jQuery AJAX timeout 超时问题详解
Jun 21 Javascript
使用do...while的方法输入一个月中所有的周日(实例代码)
Jul 22 Javascript
手机端点击图片放大特效PhotoSwipe.js插件实现
Aug 24 Javascript
Vue.js动态组件解析
Sep 09 Javascript
微信小程序实现循环动画效果
Jul 16 Javascript
js实现带有动画的返回顶部
Aug 09 Javascript
返回上一个url并刷新界面的js代码
Sep 12 Javascript
Ant Design moment对象和字符串之间的相互转化教程
Oct 27 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
PHP explode()函数用法、切分字符串
2012/10/03 PHP
基于PHP 面向对象之成员方法详解
2013/05/04 PHP
手把手教你打印出PDF(关于fpdf的简单应用)
2013/06/25 PHP
php计划任务之ignore_user_abort函数实现方法
2015/01/08 PHP
PHP实现的XML操作类【XML Library】
2016/12/29 PHP
PHP读取并输出XML文件数据的简单实现方法
2017/12/22 PHP
PHP fopen函数用法实例讲解
2019/02/15 PHP
PHP实现发送微博消息功能完整示例
2019/12/04 PHP
PHP常用字符串输出方法分析(echo,print,printf及sprintf)
2021/03/09 PHP
js数组循环遍历数组内所有元素的方法
2014/01/18 Javascript
JavaScript获取页面中表单(form)数量的方法
2015/04/03 Javascript
canvas实现环形进度条效果
2017/03/23 Javascript
11行JS代码制作二维码生成功能
2018/03/09 Javascript
Vue3 中的数据侦测的实现
2019/10/09 Javascript
uniapp微信小程序:key失效的解决方法
2021/01/20 Javascript
利用python修改json文件的value方法
2018/12/31 Python
PYTHON EVAL的用法及注意事项解析
2019/09/06 Python
python打开音乐文件的实例方法
2020/07/21 Python
Python如何实现大型数组运算(使用NumPy)
2020/07/24 Python
浅析Python 字符编码与文件处理
2020/09/24 Python
PyCharm 解决找不到新打开项目的窗口问题
2021/01/15 Python
Matplotlib animation模块实现动态图
2021/02/25 Python
浅谈Html5页面打开app的一些思考
2020/03/30 HTML / CSS
美国背景检查、公共记录和人物搜索网站:BeenVerified
2018/02/25 全球购物
圣诞树世界:Christmas Tree World
2019/12/10 全球购物
自我评价200字分享
2013/12/17 职场文书
学习十八大精神心得体会
2013/12/31 职场文书
缓刑人员的思想汇报
2014/01/11 职场文书
保护母亲河倡议书
2014/04/14 职场文书
爱的奉献演讲稿
2014/09/10 职场文书
2014年房地产销售工作总结
2014/12/01 职场文书
复兴之路展览观后感
2015/06/02 职场文书
团支部书记竞选稿
2015/11/21 职场文书
2016计算机专业毕业生自荐信
2016/01/28 职场文书
Python自动化工具之实现Excel转Markdown表格
2022/04/08 Python
vue项目proxyTable配置和部署服务器
2022/04/14 Vue.js