Vant Lazyload 圖片懶加載

2022-05-31 13:35 更新

引入

?Lazyload? 是 Vue 指令,使用前需要對指令進(jìn)行注冊

import Vue from 'vue';
import { Lazyload } from 'vant';

Vue.use(Lazyload);

// 注冊時可以配置額外的選項
Vue.use(Lazyload, {
  lazyComponent: true
});

代碼演示

基礎(chǔ)用法

將?v-lazy?指令的值設(shè)置為你需要懶加載的圖片

<img v-for = "img in imageList" v-lazy = "img" >
export default {
  data() {
    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`選項
Vue.use(Lazyload, {
  lazyComponent: true
});
<lazy-component>
  <img v-for = "img in imageList" v-lazy = "img" >
</lazy-component>

API

Options

參數(shù)說明類型默認(rèn)值
loading加載時的圖片string-
error錯誤時的圖片string-
preload預(yù)加載高度的比例string-
attempt嘗試次數(shù)number3
listenEvents監(jiān)聽的事件string[]scroll
adapter適配器object-
filter圖片 URL 過濾object-
lazyComponent是否能懶加載模塊booleanfalse
更多內(nèi)容請參照:vue-lazyload 官方文檔


實(shí)例演示

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號