【Vue】使用require實現路由按需加載


Vue 路由按需加載(路由懶加載) component: resolve => require([’…/pages/home.vue’], resolve)

vue 異步組件技術 ==== 異步加載,vue-router 配置路由 , 使用 vue 的異步組件技術 , 可以實現按需加載,但是,這種情況下一個組件生成一個 js 文件

import Vue from 'vue'
import VueRouter from 'vue-router'
// "@"相當於".."
import Detail from '../pages/goodsDetail'
import Msg from '../components/message.vue'

// 使用路由
Vue.use(VueRouter)

export default new VueRouter({
  mode: 'history',
  routes: [
    {
      // 進行路由配置,規定'/'引入到home組件
      path: '/',
      component: resolve => require(['../pages/home.vue'], resolve),
      meta: {
        title: 'home',
      },
    },
    {
      path: '/msg',
      component: Msg,
    },
    {
      path: '/detail',
      component: Detail,
      children: [
        {
          path: 'msg',
          component: Msg,
        },
      ],
    },
  ],
})
component: resolve => require(['../pages/home.vue'], resolve)

如果用 import 引入的話,當項目打包時路由里的所有 component 都會打包在一個 js 中,造成進入首頁時,需要加載的內容過多,時間相對比較長

當你用 require 這種方式引入的時候,會將你的 component 分別打包成不同的 js,加載的時候也是按需加載,只用訪問這個路由網址時才會加載這個 js

打包的時候看看目錄結構就明白


免責聲明!

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



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