(組件、路由)懶加載


  • 懶加載也叫延遲加載,即在需要的時候進行加載,隨用隨載

在單頁應用中,如果沒有應用懶加載,運用webpack打包后的文件將會異常的大,
造成進入首頁時,需要加載的內容過多,延時過長,不利於用戶體驗,
運用懶加載可以將頁面進行划分,按需加載頁面,可以分擔首頁所承擔的加載壓力,減少加載用時。

  • 一種代碼分塊的語法,使用 AMD 風格的 require
const Foo = resolve => require(['./Foo.vue'], resolve);
const router = new VueRouter({
  routes: [
    { path: '/foo', component: Foo }
  ]
})
//router/index.js
import Vue from 'vue'
import Router from 'vue-router'
Vue.use(Router)

const router = new Router({
  routes: [
    {
      mode: 'history',
      path: '/home',
      name: 'home',
      component:  resolve => require([URL], resolve),//懶加載
      children: [
        {
          mode: 'history',
          path: '/home/:name',
          name: 'any',
          component: resolve => require(['@/components/any'], resolve),//懶加載
        },
      ]
    },
    {
      mode: 'history',
      path: '/my',
      name: 'my',
      component: resolve => require(['@/components/my'], resolve),//懶加載,
      children: [
        {
            mode: 'history',
            path: '/my/:name',
            name: 'any',
            component: resolve => require(['@/components/any'], resolve),//懶加載
        },
      ]
    },
    {
      path: '/login',
      name: 'Login',
      component: resolve=>require(['@/components/login'],resolve)
    },
  ]
});

有一個問題:項目build以后,這個懶加載還有用嗎?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM