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

Details zur Reihenfolge, in der MySQL my.cnf liest

Inhaltsverzeichnis Die Reihenfolge, in der MySQL ...

Eine kurze Einführung in React

Inhaltsverzeichnis 1. CDN-Einführung 1.1 reagiere...

Umfassendes Verständnis der HTML-Grundstruktur

Einführung in HTML HyperText-Auszeichnungssprache...

Eine kurze Diskussion zum Problem des Docker-Run-Containers im erstellten Status

Bei einem aktuellen Problem gibt es folgendes Phä...

Acht Möglichkeiten zur Implementierung von Kommunikation in Vue

Inhaltsverzeichnis 1. Komponentenkommunikation 1....

Dinge, die Sie nicht über die CSS-Pseudoelemente ::before und ::after wissen

CSS hat zwei Pseudoklassen, die nicht häufig verw...

Ist Ihre Website für IE8 geeignet?

Während der Olympischen Spiele wird IE 8 Beta 2 ve...

Übersicht über MySQL-Statistiken

MySQL führt SQL durch den Prozess der SQL-Analyse...

5 Dinge, die beim Schreiben von React-Komponenten mit Hooks zu beachten sind

Inhaltsverzeichnis 01. Verwenden Sie useState, we...

Schritte zum Installieren einer RocketMQ-Instanz unter Linux

1. JDK installieren 1.1 Überprüfen Sie, ob die ak...

CSS-Code-Abkürzung div+css-Layout-Code-Abkürzungsspezifikation

Durch die Verwendung von Abkürzungen können Sie di...

Detaillierte Erklärung des Javascript Echarts Luftqualitätskarteneffekts

Wir müssen zunächst die Luftqualitätsdaten mit de...