In diesem Artikelbeispiel wird der spezifische Code von Vue zur Realisierung der Bildfrequenzwiedergabe des Karussells als Referenz bereitgestellt. Der spezifische Inhalt ist wie folgt brauchen Übergeben Sie ein Array mit Verzeichnisnamen. Lesen Sie über diesen Verzeichnisnamen alle Bilder im Dateiverzeichnis und spielen Sie sie in einer Schleife ab. Dabei entsteht der Effekt, dass jede Sekunde eine bestimmte Anzahl von Bildern abgespielt wird. Nachdem das letzte Verzeichnis abgespielt wurde, springen Sie zum ersten Verzeichnis und spielen es in einer Schleife ab. Core: Verwenden Sie eine API von webpack require.contex, um den Dateinamen im Verzeichnis zu lesen. Wenn Sie mehr wissen möchten, können Sie es sich ansehen. CodeHTML <Vorlage> <div id="imgPlay" ref="container" :style="[Stil]"> <img :src="imgsrc" :style="[{height:style.height,width:style.width}]"> <div id="aber"> <button @click="start()">Starten</button> <button @click="stop()">Stopp</button> </div> </div> </Vorlage> JavaScript <Skript> Standard exportieren { Name: "ZxImgPlay", Daten () { zurückkehren { Stil:[ Breite: "50px", Höhe: "50px" ], Intervall: null, // Timer-ID flag: true, // Zeitschalter setIntervalNumber: 0, // Aktuell angezeigtes Bild subscript imgsrc: "", // Anzuzeigender Bildpfad imgUrls: [], // Alle Bildpfade frameRate: 0 // Bildrate } }, berechnet: {}, betrachten: {}, erstellt () { }, montiert () { dies.zxInit() }, vorZerstören () { }, Methoden: { zxInit() { //This.DisplayParam ist eine Menge von Dingen innerhalb des Unternehmens, und das gemischte Objekt //this.DisplayParam.frameRate ist ein Array ["Verzeichnisname 1", "Verzeichnisname 2"] // this.DisplayParam.imgUrls ist ein totes Bild. Wenn kein Verzeichnis vorhanden ist, wird das tote Bild verwendet. // this.DisplayParam.frameRate ist die eingehende Bildrate this.frameRate = this.DisplayParam.frameRate && (1000 / this.DisplayParam.frameRate) dies.imgUrls = dies.DisplayParam.imgUrls this.DisplayParam.imageFileName != 0 ? this.readdir(this.DisplayParam.imageFileName) : this.showImages(true) }, Start () { wenn (dieses.flag) return dies.showImages() dieses.flag = wahr }, stoppen () { this.flag = falsch Intervall löschen(dieses.Intervall) }, readImages(Bilddateiname, _A) { dies.stopp() let req = require.context("@/../static/images", true, /\.(?:bmp|jpg|gif|jpeg|png)$/).keys(); let Pfad = neuer RegExp(Bilddateiname[_A]) req.forEach(item => { wenn (Pfad.Test(Element)) { this.imgUrls.push({ img: "@/../static/images/" + imageFileName[_A] + item.substring(item.lastIndexOf('/')) }) } }) dies.showImages() }, readdir (Bilddateiname) { diese.imgUrls = [] für (lass i = 0; i < Bilddateiname.Länge; i++) { dies.readImages(Bilddateiname, i) } }, zeigeBilder(_B) { wenn (_B) this.imgUrls = this.imgUrlsSort(this.imgUrls, 'sort') Konsole.log(diese.imgUrls) dieses.Intervall = setzeIntervall(dieses.setIntervalFun, diese.FrameRate) }, imgUrlsSort (ary, Schlüssel) { return ary.sort((a, b) => { sei x = a[Schlüssel]; sei y = b[Schlüssel]; Rückgabe ((x < y) ? -1 : (x > y) ? 1 : 0) }) }, setzeIntervalFun () { wenn (this.setIntervalNumber >= this.imgUrls.length) { this.setIntervalNumber = 0 } dies.imgsrc = dies.imgUrls[diese.setIntervalNumber++].img || '' } } } </Skript> Frage Das Obige hat die Funktion erreicht, aber bisher wurden zwei Probleme gefunden 1. Der erste Parameter der require.context()-API kann keinen veränderbaren Wert, wie etwa eine Variable, verwenden, und es wird eine Warnung ausgegeben. Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: So dockerisieren Sie eine Python-Django-Anwendung
>>: Was tun, wenn Sie das ursprüngliche Passwort für MySQL auf dem MAC vergessen?
Inhaltsverzeichnis Vorwort Fall Optimierung Zusam...
In diesem Artikel werden die pessimistische und d...
Um umfassendere Ergebnisse zu erhalten, müssen wi...
1. Hintergrund 1. Stellen Sie kurz den Shared Sto...
Inhaltsverzeichnis Vorwort Installation und Konfi...
Einfügen von Daten in Tabellennamen (Spaltenname ...
Vorwort Ich habe bereits einen Artikel über REM-A...
Zunächst einmal hängt die Gestaltung des Webseiten...
In diesem Artikel wird der spezifische JavaScript...
Das Thema, das ich heute mit Ihnen teilen möchte,...
Inhaltsverzeichnis npm herunterladen Schritt (1) ...
Nginx verwendet reguläre Ausdrücke, um Platzhalte...
Was sind die Shutdown-Befehle für Linux-Systeme? ...
Löschprozedur sp_name/ Zuvor habe ich Ihnen die G...
<meta http-equiv="x-ua-kompatibel" co...