W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
當(dāng)頁面需要加載大量內(nèi)容時,使用懶加載可以實(shí)現(xiàn)延遲加載頁面可視區(qū)域外的內(nèi)容,從而使頁面加載更流暢。
通過以下方式來全局注冊組件,更多注冊方式請參考組件注冊。
Lazyload 是 Vue 指令,使用前需要對指令進(jìn)行注冊。
import { createApp } from 'vue';
import { Lazyload } from 'vant';
const app = createApp();
app.use(Lazyload);
// 注冊時可以配置額外的選項
app.use(Lazyload, {
lazyComponent: true,
});
將 v-lazy 指令的值設(shè)置為你需要懶加載的圖片。
<img v-for="img in imageList" v-lazy="img" />
export default {
setup() {
return {
imageList: [
'https://img.yzcdn.cn/vant/apple-1.jpg',
'https://img.yzcdn.cn/vant/apple-2.jpg',
],
};
},
};
和圖片懶加載不同,背景圖懶加載需要使用 v-lazy:background-image,值設(shè)置為背景圖片的地址,需要注意的是必須聲明容器高度。
<div v-for="img in imageList" v-lazy:background-image="img" />
將需要懶加載的組件放在 lazy-component 標(biāo)簽中,即可實(shí)現(xiàn)組件懶加載。
// 注冊時設(shè)置`lazyComponent`選項
app.use(Lazyload, {
lazyComponent: true,
});
<lazy-component>
<img v-for="img in imageList" v-lazy="img" />
</lazy-component>
參數(shù) | 說明 | 類型 | 默認(rèn)值 |
---|---|---|---|
loading | 加載時的圖片 | string | - |
error | 錯誤時的圖片 | string | - |
preload | 預(yù)加載高度的比例 | string | - |
attempt | 嘗試次數(shù) | number | 3
|
listenEvents | 監(jiān)聽的事件 | string[] | scroll 等 |
adapter | 適配器 | object | - |
filter | 圖片 URL 過濾 | object | - |
lazyComponent | 是否能懶加載模塊 | boolean | false
|
更多內(nèi)容請參照:vue-lazyload 官方文檔
由于 Lazyload 組件在注冊時可以傳入一些配置項,所以我們不會自動注冊 Lazyload 組件,需要手動進(jìn)行注冊:
const app = Vue.createApp();
app.use(vant.Lazyload, {
lazyComponent: true,
});
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: