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 相关文章推荐
添加到收藏夹代码(兼容几乎所有的浏览器)
Jan 09 Javascript
用js实现的检测浏览器和系统的函数
Apr 09 Javascript
Jquery+ajax请求data显示在GridView上(asp.net)
Aug 27 Javascript
js判断输入是否为正整数、浮点数等数字的函数代码
Nov 17 Javascript
鼠标经过显示二级菜单js特效
Aug 13 Javascript
javascript面向对象之共享成员属性与方法及prototype关键字用法
Jan 13 Javascript
浅谈Javascript数组索引
Jul 29 Javascript
js代码延迟一定时间后执行一个函数的实例
Feb 15 Javascript
js仿网易表单及时验证功能
Mar 07 Javascript
vue使用Element组件时v-for循环里的表单项验证方法
Jun 28 Javascript
Vue.js组件使用props传递数据的方法
Oct 19 Javascript
在vue中使用image-webpack-loader实例
Nov 12 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中10个不常见却非常有用的函数
2010/03/21 PHP
PHP使用GIFEncoder类生成的GIF动态图片验证码
2014/07/01 PHP
Codeigniter框架的更新事务(transaction)BUG及解决方法
2014/07/25 PHP
php+ajax实现的点击浏览量加1
2015/04/16 PHP
CodeIgniter 完美解决URL含有中文字符串
2016/05/13 PHP
PHP微信模板消息操作示例
2017/06/29 PHP
Google韩国首页图标动画效果
2007/08/26 Javascript
jquery 页面全选框实践代码
2010/04/02 Javascript
nodejs 整合kindEditor实现图片上传
2015/02/03 NodeJs
简单实现异步编程promise模式
2015/07/31 Javascript
javascript实现倒计时跳转页面
2016/01/17 Javascript
jQuery实现的鼠标经过时变宽的效果(附demo源码)
2016/04/28 Javascript
关于页面刷新vuex数据消失问题解决方案
2017/07/03 Javascript
JS控制鼠标拒绝点击某一按钮的实例
2017/12/29 Javascript
webpack-dev-server自动更新页面方法
2018/02/22 Javascript
JavaScript两种计时器的实例讲解
2019/01/31 Javascript
vue.js封装switch开关组件的操作
2020/10/26 Javascript
windows下python模拟鼠标点击和键盘输示例
2014/02/28 Python
Python简单读取json文件功能示例
2017/11/30 Python
Python enumerate索引迭代代码解析
2018/01/19 Python
python 用 xlwings 库 生成图表的操作方法
2019/12/22 Python
Python的in,is和id函数代码实例
2020/04/18 Python
python爬虫构建代理ip池抓取数据库的示例代码
2020/09/22 Python
使用 CSS3 中@media 实现网页自适应的示例代码
2020/03/24 HTML / CSS
html5实现微信打飞机游戏
2014/03/27 HTML / CSS
香港个人化生活购物网站:Ballyhoo Limited
2016/09/10 全球购物
iHerb香港:维生素、补充剂和天然保健品
2017/08/01 全球购物
美国酒店控股公司:Choice Hotels
2018/06/15 全球购物
波兰汽车配件网上商店:iParts.pl
2020/09/08 全球购物
查询优化的一般准则有哪些
2015/03/08 面试题
2014社会治安综合治理工作总结
2014/12/04 职场文书
优质服务心得体会(共4篇)
2016/01/22 职场文书
新手,如何业余时间安排好写作、提高写作能力?
2019/10/21 职场文书
使用Oracle跟踪文件的问题详解
2021/06/28 Oracle
Windows Server 修改远程桌面端口的实现
2022/06/25 Servers