vue按需載入元件 3種方法

2021-08-19 09:31:17 字數 2103 閱讀 7660

技術,可以實現按需載入。

vue.component('async-example', function (resolve, reject) )

}, 1000)

})

vue.component('async-webpack-example', function (resolve) )

const

importfuncdemo1 = () => import('../components/importfuncdemo1')

importfuncdemo2 = () => import('../components/importfuncdemo2')//const importfuncdemo = () => import(/* webpackchunkname: 'importfuncdemo' */ '../components/importfuncdemo')default new router({ routes: 

[ 使用 vue-cli構建的專案,在 預設情況下 ,執行 npm run build  會將所有的js**打包為乙個整體,

類似下面的路由** 

router/index.js  路由相關資訊,該路由檔案引入了多個 .vue元件

import

hello

from 

'@/components/hello'

importprovince

from 

'@/components/province'

import

segment

from 

'@/components/segment'

import

user

from 

'@/components/user'

import

loading

from 

'@/components/loading'

所以我們需要分模組打包,把我們想要組合在一起的元件打包到乙個 chunk塊中去

分模組打包需要下面這樣使用 webpack的 require.ensure,並且在最後加入乙個 chunk名,

相同 chunk名字的模組將會打包到一起

router/index.js 修改為懶載入元件

const

province=r 

=>

require

.ensure

(,()

=>r(

require

('@/components/province.vue'

)),'chunkname1'

)constsegment=r 

=>

require

.ensure

(,()

=>r(

require

('@/components/segment.vue'

)),'chunkname1'

)const

loading=r 

=>

require

.ensure

(,()

=>r(

require

('@/components/loading.vue'

)),'chunkname3'

)const

user=r 

=>

require

.ensure

(,()

=>r(

require

('@/components/user.vue'

)),'chunkname3'

)

vue元件的按需載入

一 require.ensure require.ensuire dependencies string,callback function require errorcallback function error chunkname string const list resolve list w...

vue按需載入元件,非同步元件

說實話,我一開始也不知道什麼叫按需載入元件,元件還可以按需載入?後來知道了 學不完啊.沒關係,看我的 按需載入元件,或者非同步元件,主要是應用了component的 is 屬性 template中的 這裡的每乙個按鈕,都要顯示不同的元件,所以我讓他們使用了同乙個方法名 1 template slot...

vue路由懶載入,元件按需載入

懶載入也叫延遲載入,即在需要的時候進行載入,隨用隨載。在單頁應用中,如果沒有應用懶載入,運用webpack打包後的檔案將會異常的大,造成進入首頁時,需要載入的內容過多,延時過長,不利於使用者體驗,而運用懶載入則可以將頁面進行劃分,需要的時候載入頁面,可以有效的分擔首頁所承擔的載入壓力,減少首頁載入用...