Heim  >  Artikel  >  Web-Frontend  >  Umgang mit verzögertem Laden und Platzhaltern von Bildern in Vue

Umgang mit verzögertem Laden und Platzhaltern von Bildern in Vue

王林
王林Original
2023-10-15 17:12:19815Durchsuche

Umgang mit verzögertem Laden und Platzhaltern von Bildern in Vue... , um die anfängliche Ladezeit und die Netzwerkbandbreitennutzung zu reduzieren. Gleichzeitig kann die Verwendung der Platzhaltertechnologie die Stabilität des Seitenlayouts aufrechterhalten und das Problem der Seitenlayoutstörung vermeiden, die durch langsames Laden von Bildern verursacht wird. In diesem Artikel wird erläutert, wie Lazy Loading- und Platzhalterfunktionen für Bilder in Vue implementiert werden, und es werden spezifische Codebeispiele bereitgestellt.

1. Installieren Sie das Plug-in

Zunächst müssen wir ein Vue-Plugin installieren, um die Lazy-Loading-Funktion von Bildern zu implementieren. Es wird empfohlen, das Vue-Lazyload-Plug-In zu verwenden, das einfach zu verwenden ist und eine hohe Kompatibilität aufweist. Installieren Sie es mit dem folgenden Befehl:

npm install vue-lazyload --save

2. Konfigurieren Sie das Plug-in

In der Eingabedatei von Vue (normalerweise main.js) müssen wir das vue-lazyload-Plug-in einführen und konfigurieren. Die spezifische Konfiguration kann an die tatsächlichen Anforderungen angepasst werden. Hier ist ein häufig verwendetes Konfigurationsbeispiel:

import Vue from 'vue'
import VueLazyload from 'vue-lazyload'

Vue.use(VueLazyload, {
  preLoad: 1.3, // 预加载高度的比例
  error: 'error.jpg', // 图片加载失败时显示的占位图片
  loading: 'loading.gif', // 图片加载过程中显示的占位图片
  attempt: 3 // 加载失败后的重试次数
})

In der obigen Konfiguration legen wir das Platzhalterbild fest, das angezeigt wird, wenn das Bild nicht geladen werden kann, und das Platzhalterbild, das währenddessen angezeigt wird Der Bildladevorgang wird ausgeführt. Das Bild wird geladen. Es wird bis zu dreimal versucht, das Bild neu zu laden, nachdem der Ladevorgang fehlgeschlagen ist.

3. Anwendungs-Plug-in

Wo Bilder speziell verwendet werden, können wir Bilder langsam über den Befehl v-lazy laden und den Befehl v-loading verwenden, um während des Bildladevorgangs Platzhaltereffekte hinzuzufügen. Das Folgende ist ein Beispiel für die Verwendung des Vue-Lazyload-Plug-Ins zum Implementieren von verzögertem Laden und Platzhaltern von Bildern:

<template>
  <div>
    <img  v-lazy="imageSrc" v-loading="isLoading" / alt="Umgang mit verzögertem Laden und Platzhaltern von Bildern in Vue" >
  </div>
</template>

<script>
export default {
  data() {
    return {
      imageSrc: '', // 实际图片的地址
      isLoading: true // 控制加载过程中的占位效果
    }
  },
  mounted() {
    // 模拟获取实际图片地址的过程
    setTimeout(() => {
      this.imageSrc = 'realImage.jpg'
      this.isLoading = false
    }, 1000)
  }
}
</script>

Im obigen Code binden wir die tatsächliche Adresse des Bildes über die v-lazy-Anweisung an das imageSrc-Attribut. und verwenden Sie die V-Loading-Anweisung, um den Platzhaltereffekt während des Ladevorgangs an die Eigenschaft isLoading zu binden. Im gemounteten Lebenszyklus-Hook haben wir einen Prozess zum Abrufen der tatsächlichen Adresse des Bildes simuliert, die tatsächliche Adresse nach 1 Sekunde imageSrc zugewiesen und isLoading auf false gesetzt, um das Bild anzuzeigen.

Mit der obigen Konfiguration und dem Beispielcode können wir die Lazy Loading- und Platzhalterfunktionen von Bildern in Vue implementieren. Dies kann die Ladegeschwindigkeit und das Benutzererlebnis von Webseiten verbessern und Seitenlayoutprobleme vermeiden, die durch langsames Laden von Bildern verursacht werden. Gleichzeitig können wir durch die flexible Konfiguration des Vue-Lazyload-Plug-Ins die Auswirkungen von Lazy Loading und Platzhaltern je nach Bedarf anpassen, um bessere Optimierungsergebnisse zu erzielen.

Das obige ist der detaillierte Inhalt vonUmgang mit verzögertem Laden und Platzhaltern von Bildern in Vue. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn