vue-router懶加載速度緩慢問(wèn)題及解決方法

2018-11-25 22:59:47 來(lái)源:互聯(lián)網(wǎng)作者:前端攻城小牛 人氣: 次閱讀 580 條評(píng)論

懶加載:也叫延遲加載,即在需要的時(shí)候進(jìn)行加載,隨用隨載。像vue這種單頁(yè)面應(yīng)用,如果沒(méi)有應(yīng)用懶加載,運(yùn)用webpack打包后的文件將會(huì)異常的大,造成進(jìn)入首頁(yè)時(shí),需要加載的內(nèi)容過(guò)多,時(shí)間過(guò)...

懶加載:也叫延遲加載,即在需要的時(shí)候進(jìn)行加載,隨用隨載。

像vue這種單頁(yè)面應(yīng)用,如果沒(méi)有應(yīng)用懶加載,運(yùn)用webpack打包后的文件將會(huì)異常的大,造成進(jìn)入首頁(yè)時(shí),需要加載的內(nèi)容過(guò)多,時(shí)間過(guò)長(zhǎng),會(huì)出啊先長(zhǎng)時(shí)間的白屏,即使做了loading也是不利于用戶(hù)體驗(yàn),而運(yùn)用懶加載則可以將頁(yè)面進(jìn)行劃分,需要的時(shí)候加載頁(yè)面,可以有效的分擔(dān)首頁(yè)所承擔(dān)的加載壓力,減少首頁(yè)加載用時(shí)。

簡(jiǎn)單的說(shuō)就是:進(jìn)入首頁(yè)不用一次加載過(guò)多資源造成用時(shí)過(guò)長(zhǎng)?。。?/p>

懶加載的方式:

  1. import Vue from 'vue'
  2. import Router from 'vue-router'
  3. Vue.use(Router)
  4. //采用了懶加載
  5. export default new Router({
  6.  routes: [
  7.  {
  8.   path:'/',
  9.   component:resolve => require(['@/components/index'],resolve)
  10.  }
  11.  ]
  12. })

非懶加載的方式:

  1. import Vue from 'vue'
  2. import Router from 'vue-router'
  3. import index from '@/components/index'
  4. Vue.use(Router)
  5. export default new Router({
  6.  routes: [
  7.  {
  8.   path:'/',
  9.   component:index
  10.  }
  11.  ]
  12. })

下面看下vue-router路由懶加載

 用vue.js寫(xiě)單頁(yè)面應(yīng)用時(shí),會(huì)出現(xiàn)打包后的JavaScript包非常大,影響頁(yè)面加載,我們可以利用路由的懶加載去優(yōu)化這個(gè)問(wèn)題,當(dāng)我們用到某個(gè)路由后,才去加載對(duì)應(yīng)的組件,這樣就會(huì)更加高效,實(shí)現(xiàn)代碼如下:

  1. import Vue from 'vue'
  2. import Router from 'vue-router'
  3. Vue.use(Router)
  4. export default new Router({
  5.  routes: [
  6.  {
  7.   path: '/',
  8.   component: resolve => require(['components/Hello.vue'], resolve)
  9.  },
  10.  {
  11.   path: '/about',
  12.   component: resolve => require(['components/About.vue'], resolve)
  13.  }
  14.  ]
  15. })

總結(jié)

以上所述是小編給大家介紹的vue-router懶加載速度緩慢問(wèn)題及解決方法,希望對(duì)大家有所幫助,

    無(wú)相關(guān)信息