Vant Uploader implementiert die Komponente zum Hochladen eines oder mehrerer Bilder

Vant Uploader implementiert die Komponente zum Hochladen eines oder mehrerer Bilder

In diesem Artikel wird die Vant Uploader-Komponente zum Hochladen eines oder mehrerer Bilder zu Ihrer Referenz vorgestellt. Der spezifische Inhalt ist wie folgt

HTML-Teil

<Vorlage>
  <div Klasse="contWrap">
    <van-uploader
      v-model="Dateiliste"
      :mehrere="wahr"
      :before-read="vordemLesen"
      :after-read="nachdemLesen"
      :before-delete="delUploadImg"
      Upload-Symbol = "plus"
    >
    <!-- Hinweis: Dies ist ein benutzerdefinierter Upload-Stil-->
      <!-- <p>
        <van-Symbol
          Name="plus"
          Farbe: #07c160
          Größe=".5rem"
        />
        Foto hochladen</p> -->
    </van-uploader>
  </div>
</Vorlage>

js-Teil

<Skript>
importiere Axios von „Axios“;
Standard exportieren {
  Name: "uploadImages",
  Daten() {
    zurückkehren {
      Dateiliste: [],
      uploadUrl: "/api/upload/DateiUpload",
      Überschriften: {
        Token: this.$store.state.account.token,
      },
    };
  },

  Methoden: {
    // Booleschen Wert zurückgeben beforeRead(file) {
      if (Dateiinstanz des Arrays) {
        //Beurteilen, ob es sich um ein Array handelt file.forEach((v) => {
          dies.checkFile(v);
        });
      } anders {
        this.checkFile(Datei);
      }
      gibt true zurück;
    },
    //Bildtyp checkcheckFile(file) {
      const-Format = ["jpg", "png", "jpeg"];
      const index = file.name.lastIndexOf(".");
      const finalName = Datei.Name.substr(Index + 1);
      wenn (!format.includes(finalName.toLowerCase())) {
        Toast("Bitte hochladen" + format.join(",") + "Bild formatieren");
        gibt false zurück;
      }
    },
    nachLesen(Datei) {
    // Sie können die Datei jetzt selbst auf den Server hochladen, if (file instanceof Array) {
        datei.map((v) => {
          v.status = "Hochladen";
          v.message = "Hochladen...";
          dies.uploadImg(v);
        });
      } anders {
        file.status = "Hochladen";
        file.message = "Hochladen...";
        this.uploadImg(Datei);
      }
    },
    //Hochladen uploadImg(Datei) {
      const formData = new FormData();
      formData.append("Datei", Datei.Datei);
      Achsen
        .post(this.uploadUrl, formData, {
          Header: diese.header,
        })
        .then((res) => {
          wenn (res.data) {
            if (Dateiinstanz des Arrays) {
              //Beurteilen, ob es sich um ein Array handelt file.map((v, i) => {
                v.status = "Erfolg";
                v.Nachricht = "";
                v.url = res.data[i];
              });
            } anders {
              Datei.status = "Erfolgreich";
              Datei.Nachricht = "";
              Datei.URL = res.data.uploadUrl;
            }
          }
        })
        .catch((err) => {
          dies.$benachrichtigen({
            Typ: "Warnung",
            Meldung: "Upload fehlgeschlagen",
          });
        });
    },
    //löschen delUploadImg(item) {
      diese.fileList = diese.fileList.filter((v) => v.url != item.url);
    }
  },
};
</Skript>

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:
  • Der Uploader von Vue+Vant auf dem mobilen Endgerät realisiert die Funktionen des Hochladens, Komprimierens und Drehens von Bildern
  • Vant Uploader implementiert die Drag-and-Drop-Funktion zum Hochladen von Bildern (als Cover festlegen)

<<:  Lösen Sie das Problem der VScode-Konfiguration durch Remote-Debugging des Linux-Programms

>>:  Schritte zum Wiederherstellen einer einzelnen MySQL-Tabelle

Artikel empfehlen

Vue-CLI3.x stellt Projekte automatisch auf dem Server bereit

Inhaltsverzeichnis Vorwort 1. Installieren Sie sc...

So erstellen Sie ein Drag & Drop-Plugin mit benutzerdefinierten Vue-Direktiven

Wir alle kennen die Drag-and-Drop-Funktion von HT...

Detaillierte Erläuterung des Excel-Parsings und -Exports basierend auf Vue

Inhaltsverzeichnis Vorwort Grundlegende Einführun...

Auszeichnungssprache - Phrasenelemente

Klicken Sie hier, um zum Abschnitt „HTML-Tutorial“...

CentOS 7-Konfiguration Tomcat9+MySQL-Lösung

Tomcat konfigurieren Installieren Sie zuerst Tomc...

Funktionen in TypeScript

Inhaltsverzeichnis 1. Funktionsdefinition 1.1 Fun...

Detaillierte Erklärung zum Datenaustausch zwischen Vue-Komponenten

Inhaltsverzeichnis 1. In der Projektentwicklung w...

Detaillierte Erklärung des Ungültigkeitsprozesses des VUE-Tokens

Inhaltsverzeichnis Ziel Gedankenanalyse Code-Land...

Detaillierte Schritte zur Entwicklung von WeChat-Miniprogrammen mit Typescript

Auf die Vorteile von Typescript müssen wir nicht ...

Probleme und Lösungen bei der Installation und Verwendung von VMware

Die virtuelle Maschine wird verwendet oder es kan...