91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在Vue中實現一個異步組件函數

發布時間:2021-02-18 16:47:40 來源:億速云 閱讀:209 作者:Leah 欄目:web開發

這期內容當中小編將會給大家帶來有關如何在Vue中實現一個異步組件函數,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

具體代碼如下所示:

export default new Router({
 routes: [
  {
   path: '/live',
   name: 'live',
   component: () => import('@/view/live/live.vue')
  }
 ]
})

上面的代碼是很常見的router代碼分割,只在代碼路由為live才會去加載live.vue

但這樣在live.vue獲取的過程將是一片空白,什么也沒有,體驗不好, 利用vue提供的異步組建可以解決

新建一個 loadable.vue

<template>
  <index></index>
</template>
<script>
  import LoadingComponent from './load.vue' // LoadingComponents是 live.vue為獲取前展示的內容
  export default {
    components: {
      index: () => ({
        component: import('@/view/live/live.vue'),
        // 異步組件加載時使用的組件
        loading: LoadingComponent,
        // 展示加載時組件的延時時間。默認值是 200 (毫秒)
        delay: 200,
        // 如果提供了超時時間且組件加載也超時了,
        // 則使用加載失敗時使用的組件。默認值是:`Infinity`
        timeout: 3000
      })
    }
  }
</script>

然后修改router.js

export default new Router({
 routes: [
  {
   path: '/live',
   name: 'live',
   component: import('loadable.vue')
  }
 ]
})

這樣在獲取到live.vue之前就會有自定義的loading展示了

但是路由很多, 我們不可能每個路由都寫一個 loadable.vue, 所以編寫一個函數來解決

新建一個 loadable.js

import LoadingComponent from './load.vue'
export default (asyncComponent) => {
  const Com= () => ({
    // 這里vue官網可以知道具體有哪些參數可以設置
    // https://cn.vuejs.org/v2/guide/components-dynamic-async.html#%E5%A4%84%E7%90%86%E5%8A%A0%E8%BD%BD%E7%8A%B6%E6%80%81
    component: asyncComponent(),
    loading: LoadingComponent
  })
  return {
    render (h) {
     return h(Com, {})
    }
  }
}

然后修改一下router.js

import loadable from 'loadable.js'
export default new Router({
 routes: [
  {
   path: '/live',
   name: 'live',
   component: loadable (() => import('@/view/live/live.vue'))
  }
 ]
})

上述就是小編為大家分享的如何在Vue中實現一個異步組件函數了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

vue
AI

鹤壁市| 怀安县| 庆云县| 佳木斯市| 德昌县| 井研县| 延川县| 连平县| 都昌县| 大丰市| 邻水| 达拉特旗| 湘西| 新干县| 马公市| 永兴县| 贡觉县| 姜堰市| 宁化县| 洛浦县| 曲沃县| 夏津县| 凤台县| 靖安县| 资阳市| 三穗县| 普格县| 泸溪县| 石首市| 双峰县| 宿迁市| 乌兰察布市| 东宁县| 军事| 康定县| 闽清县| 杭锦后旗| 萨迦县| 建宁县| 梅州市| 巴林左旗|