Vue implementiert das Hinzufügen, Anzeigen und Löschen mehrerer Bilder

Vue implementiert das Hinzufügen, Anzeigen und Löschen mehrerer Bilder

In diesem Artikel wird der spezifische Code für Vue zum Hinzufügen, Anzeigen und Löschen mehrerer Bilder zu Ihrer Information bereitgestellt. Der spezifische Inhalt ist wie folgt

Effektbild:

Geben Sie zunächst ein input[type="file"] ein und blenden Sie es anschließend aus. Bei einem Klick auf den Bereich, in dem sich das Pluszeichen befindet, wird das Klick-Event zur Dateiauswahl ausgelöst.

Hinweis: Verwenden Sie zum Abrufen des src-Werts v-bind:src="imgsrc"; die Verwendung von src="imgsrc" oder src="{{imgsrc}}" führt zu einem Fehler.

Code: (einige Stile ausgelassen, hauptsächlich Methoden zum Hinzufügen und Löschen)

<Vorlage>
 <div id="Originalität">
    <div class="ipt">Hauptbild:</div>
    <div Klasse="Bild">
     <div class="Hauptbild">
      <div class="iconfont icon-jia" @click="uploadPic('filed')"></div>
     </div>
     <!--Sie können dem Hauptbild mehrere Bilder hinzufügen-->
     <div id="img" v-for="(imgsrc,index) in imgsrcs">
      <img id="imgshow" :src="imgsrc">
      <div Klasse = "iconfont icon-cha" @click = "deleteMulPic(index)"</div>
     </div>
    </div>
    <input id="abgelegt" type="file" multiple="multiple" accept="image/*,application/pdf" style="display: none;" @change="changeMulPic()">
 
    
 </div>
</Vorlage>
 
<Skript>
 Standard exportieren {
  Name: "Originalität",
  Komponenten:
 
  },
  Daten() {
   zurückkehren {   
    Bilddateien: []
   }
  },
  Methoden: {
   Bild hochladen: Funktion (Wert) {
    document.getElementById(val).click();
   },
   ändereMulPic: function() {
    var Datei = $("#filed").get(0).files[0];
    $("#img").anzeigen();
    this.imgsrcs.push(window.URL.createObjectURL(Datei))
   },
   deleteMulPic: Funktion(Index) {
    dies.imgsrcs.splice(index, 1);
   }
  }
 }
</Skript>
 
<Stilbereich>
 
 .Hauptbild {
  schweben: links;
  Breite: 100px;
  Höhe: 100px;
  Hintergrund: rgba(255, 255, 255, 1);
  Rahmenradius: 2px;
  Rand: 1px durchgezogen #E5E9F2;
 }
 
 .Bild {
  Mindesthöhe: 100px;
 }
 
 .Dateien {
  Anzeige: keine;
  schweben: links;
 }
 
 #img {
  Rand links: 20px;
  schweben: links;
  Breite: 100px;
  Höhe: 100px;
  Rahmenradius: 2px;
  Rand: 1px durchgezogen #E5E9F2;
 }
 
 .icon-cha {
  Cursor: Zeiger;
  Position: absolut;
  Breite: 10px;
  Höhe: 10px;
  Rand links: 85px;
  Rand oben: -100px;
  Farbe: #BFC5D1;
 }
 
 #Bildshow {
  Breite: 100px;
  Höhe: 100px;
 }
 
 .icon-jia {
  Textausrichtung: zentriert;
  Breite: 20px;
  Höhe: 20px;
  Zeilenhöhe: 20px;
  Farbe: #BFC5D1;
  Polsterung: 40px;
  Cursor: Zeiger;
 }
 
</Stil>

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:
  • Klicken Sie auf die Vue-Schaltfläche, um Komponentenfunktionen dynamisch zu erstellen und zu löschen.
  • Detaillierte Erklärung zum Hinzufügen und Löschen von Elementen in Vue
  • Vue implementiert das Löschen des Elements eines gelöschten Objekts
  • Zusammenfassung gängiger Methoden zum Klicken und Löschen in Vue

<<:  So installieren Sie die binäre Version von mysql5.7.24 auf Centos 7 und wie Sie das Problem lösen

>>:  Lösung für das Problem, dass Docker-Container nicht gestoppt oder beendet werden können

Artikel empfehlen

Implementierung und Optimierung von MySql-Unterabfragen IN

Inhaltsverzeichnis Warum ist IN langsam? Was ist ...

mysql-8.0.16 winx64 neuestes Installationstutorial mit Bildern und Text

Ich habe erst vor Kurzem angefangen, mich mit Dat...

So verwenden Sie Filter zur Implementierung der Überwachung in Zabbix

Als ich kürzlich an Überwachungsgeräten arbeitete...

Eine detaillierte Anleitung zu benutzerdefinierten Anweisungen in Vue

Inhaltsverzeichnis 1. Was ist eine benutzerdefini...

Docker-Container greift auf MySQL-Operationen des Hosts zu

Hintergrund: Es gibt ein Flask-Projekt, das eine ...

Native JS-Implementierung des Ladefortschrittsbalkens

Dieser Artikel zeigt einen Spezialeffekt für dyna...

So erstellen Sie schnell MySQL Master-Slave mit mysqlreplicate

Einführung Das mysql-utilities-Toolset ist eine S...

Zwei Implementierungscodes der programmgesteuerten Navigation mit Vue-Router

Zwei Möglichkeiten zum Navigieren auf der Seite D...

Der Unterschied zwischen this.$router und this.$route in Vue und der push()-Methode

Im offiziellen Dokument heißt es: Durch Einfügen ...

Lernen Sie MySQL Index Pushdown in fünf Minuten

Inhaltsverzeichnis Vorwort Was ist Index-Pushdown...

Zusammenfassung der Tipps zum Erstellen von Webseiten

Vorwort Dieser Artikel fasst hauptsächlich einige...

js-Lernnotizen: Schlüsselwörter „class“, „super“ und „extended“

Inhaltsverzeichnis Vorwort 1. Erstellen Sie Objek...