鍍金池/ 問答/HTML/ vue.js項(xiàng)目組件模塊的調(diào)用問題

vue.js項(xiàng)目組件模塊的調(diào)用問題

import Vue from 'vue'
import VueRouter from 'vue-router'
// "@"相當(dāng)于".."
import Detail from '../pages/goodsDetail'
import Msg from '../components/message.vue'

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

export default new VueRouter({
  mode: 'history',
  routes: [
    {
      // 進(jìn)行路由配置,規(guī)定'/'引入到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),
      meta: {
        title: 'home'
      }

1.不知道這第一行是什么意思,和import引入組件模塊有什么區(qū)別?
2.meta部分是什么含義?去掉沒發(fā)現(xiàn)有什么改變

求指教~謝謝!!

回答
編輯回答
溫衫

關(guān)于meta,文檔上很詳細(xì)。
meta 部分
主要放一些業(yè)務(wù)邏輯字段吧

2018年7月12日 19:51
編輯回答
焚音

如果用import引入的話,當(dāng)項(xiàng)目打包時(shí)路由里的所有component都會打包在一個(gè)js中,造成進(jìn)入首頁時(shí),需要加載的內(nèi)容過多,時(shí)間相對比較長。
當(dāng)你用require這種方式引入的時(shí)候,會將你的component分別打包成不同的js,加載的時(shí)候也是按需加載,只用訪問這個(gè)路由網(wǎng)址時(shí)才會加載這個(gè)js。
你可以打包的時(shí)候看看目錄結(jié)構(gòu)就明白了。

2018年1月9日 08:03