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

 更新时间:2019年06月11日 14:19:31   作者:小小x   我要评论

懒加载简单来说就是延迟加载或按需加载,即在需要的时候的时候进行加载。这篇文章主要介绍了vue路由懒加载及组件懒加载 ,需要的朋友可以参考下

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

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

二、定义

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

三、使用

  常用的懒加载方式有两种:即使用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实现路由懒加载及组件懒加载的方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • 35个最好用的Vue开源库(史上最全)

    35个最好用的Vue开源库(史上最全)

    无论是开发新手还是经验丰富的老手,我们都喜欢开源软件包。本文主要介绍了35个最好用的Vue开源库,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • 详解Vue + Vuex 如何使用 vm.$nextTick

    详解Vue + Vuex 如何使用 vm.$nextTick

    这篇文章主要介绍了详解Vue + Vuex 如何使用 vm.$nextTick,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • vue.js单页面应用实例的简单实现

    vue.js单页面应用实例的简单实现

    本篇文章主要介绍了vue.js单页面应用实例的简单实现,使用单页应用,没有页面切换,就没有白屏阻塞,可以大大提高 H5 的性能,达到接近原生的流畅体验。
    2017-04-04
  • element ui table(表格)实现点击一行展开功能

    element ui table(表格)实现点击一行展开功能

    这篇文章主要给大家介绍了关于element ui table(表格)实现点击一行展开功能的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • Vee-validate 父组件获取子组件表单校验结果的实例代码

    Vee-validate 父组件获取子组件表单校验结果的实例代码

    vee-validate 是为 Vue.js 量身打造的表单校验框架,允许您校验输入的内容并显示对应的错误提示信息。这篇文章主要介绍了Vee-validate 父组件获取子组件表单校验结果 ,需要的朋友可以参考下
    2019-05-05
  • 解决Vue.js由于延时显示了{{message}}引用界面的问题

    解决Vue.js由于延时显示了{{message}}引用界面的问题

    今天小编就为大家分享一篇解决Vue.js由于延时显示了{{message}}引用界面的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-08-08
  • 探究Vue.js 2.0新增的虚拟DOM

    探究Vue.js 2.0新增的虚拟DOM

    vue.js 2.0大家对此并不陌生吧。最令人兴奋的是更新页面的"虚拟DOM"的加入。那么对于虚拟 DOM 可以做什么呢?今天小编通过本文给大家解答下
    2016-10-10
  • vue单页应用加百度统计代码(亲测有效)

    vue单页应用加百度统计代码(亲测有效)

    这篇文章主要介绍了vue单页应用加百度统计代码的解决方法,需要的朋友参考下吧
    2018-01-01
  • vue-cli3+typescript初体验小结

    vue-cli3+typescript初体验小结

    这篇文章主要介绍了vue-cli3+typescript初体验小结,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-02-02
  • 详解Vuejs2.0之异步跨域请求

    详解Vuejs2.0之异步跨域请求

    这篇文章主要介绍了详解Vuejs2.0之异步跨域请求,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04

最新评论