美文网首页
vue 页面多模块,优化加载速度

vue 页面多模块,优化加载速度

作者: 终极菜鸟_424b | 来源:发表于2021-01-06 15:06 被阅读0次

    为给客户更好的客户体验,首屏组件加载速度更快一些,解决白屏问题。懒加载简单来说就是延迟加载或按需加载,即在需要的时候的时候进行加载。常用的懒加载方式有两种:即使用vue异步组件 和 ES中的import 

    1.未使用懒加载和使用异步组件懒加载  方法:component: resolve=>(require(['地址']), resolve)

           import Vue from'vue';

           import Router from'vue-router' ;

           import HelloWorld    from'@/components/HelloWorld' ;

           Vue.use(Router);

           export defaultnew Router({

             routes: [

              {

                  path: '/',

                  name: 'HelloWorld',

                  component:HelloWorld

               }

             ]

           })

    优化,省略引入 hello-world 模块 

    import Vue from 'vue'

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

    Vue.use(Router)

    export defaultnew Router({

      routes: [

        {

          path: '/',

          name: 'HelloWorld',

          component: resolve=>(require(["@/components/HelloWorld"],resolve))

        }

      ]

    })

    2.ES提出的import方法(最常用)方法:const HelloWorld = ()=>import('地址')

    import Vue from 'vue'

    import Router from 'vue-router'

    Vue.use(Router)

    const HelloWorld = ()=>import("@/components/HelloWorld")

    export defaultnew Router({

      routes: [

        {

          path: '/',

          name: 'HelloWorld',

          component:HelloWorld

        }

     ]

    })

    原始写法:

    <One-com></One-com>1111

    <One-com></One-com>1111

    <One-com></One-com>1111

    <One-com></One-com>1111

    <One-com></One-com>1111

    <One-com></One-com>1111

    <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>

    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>

    异步写法:

    <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>

    <One-com></One-com>1111

    总结:

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

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

          component: resolve=>(['地址'], resolve)

        2.es提出的import(推荐使用)

          const HelloWorld = () => import('地址')

    相关文章

      网友评论

          本文标题:vue 页面多模块,优化加载速度

          本文链接:https://www.haomeiwen.com/subject/bywnoktx.html