Es gibt eine solche Anforderung: eine Importschaltfläche. Klicken Sie auf die Schaltfläche, um eine Excel-Tabelle zu importieren. Wenn einige Daten in der Excel-Tabelle nicht importiert werden können, wird die Excel-Tabelle der fehlgeschlagenen Daten automatisch heruntergeladen. Wenn alle Daten erfolgreich importiert wurden, wird die Meldung „Import erfolgreich“ angezeigt. Fügen Sie zunächst die Upload-Dateikomponente von ElementUI an
Auf der offiziellen Website werden die Eigenschaften und die Verwendung der 1. Einführung des ElementUI-Upload-Komponenten-Uploads<el-hochladen Klasse="Upload-Demo" Aktion="https://jsonplaceholder.typicode.com/posts/" mehrere :auto-upload="false" :file-list="Dateiliste" :on-change="Dateiänderung"> <el-button type="primary">Importieren</el-button> </el-upload> Seiteneffekte Attributeinführung
2. Klicken Sie auf die Schaltfläche „Importieren“ und wählen Sie die Datei aus (klicken Sie auf „Öffnen“, um die Änderung auszulösen). An diesem Punkt können Sie die Methode Dateiänderung(Datei,Dateiliste){ console.log(Datei,'Datei') console.log(Dateiliste,'Dateiliste') } 3. Jetzt haben wir die ausgewählte Datei und können die Upload-Methode anpassen, um sie an den Backend-Server zu sendenDateiänderung(Datei,Dateiliste){ console.log(Datei,'Datei') console.log(Dateiliste,'Dateiliste') let url = 'xxx' //Backend-Server-API let-Header = { 'Content-Type':'multipart/form-data' //Beim benutzerdefinierten Hochladen ist dieser Anforderungsheaderparameter erforderlich} let formData = '' for(let i = 0;i < fileList.length;i++){ // Datei-Array durchlaufen, in der Dateiliste können mehrere Dateien enthalten sein formData = new FormData() formData.append('name',fileList[i].name) formData.append('Typ','.xlsx') formData.append('Datei',fileList[i].raw) } dies.$axios({ Überschriften: Überschriften, Methode: 'post', Daten: Formulardaten, URL: URL, responseType:'blob' //Dieser Parameter ist erforderlich, da sonst in der heruntergeladenen Excel-Tabelle eine Meldung angezeigt wird, dass die Datei beschädigt ist und nicht geöffnet werden kann}).then(res=>{ wenn(res && res.data.size == 0){ //Wenn der Hintergrund keinen Stream zurückgibt, bedeutet dies, dass alle Daten erfolgreich importiert wurden und die Meldung „Import erfolgreich“ angezeigt wird. Die Rückgabe wird nicht automatisch heruntergeladen. } //Wenn der Hintergrund einen Stream zurückgibt, bedeutet dies, dass der Import einiger Daten fehlgeschlagen ist. Dann wird die Excel-Tabelle mit den fehlgeschlagenen Daten automatisch heruntergeladen. let name = 'Import fehlgeschlagener Daten.xlsx' //Passen Sie den Namen der heruntergeladenen Excel-Tabelle an. let blob = new Blob([res.data]) let url = Fenster.URL.createObjectURL(blob) lass einen Link = Dokument.createElement('a'). aLink.style.display = "keine" aLink.href = URL //Das Download-Attribut definiert die Adresse des Download-Links. Das href-Attribut muss im <a>-Tag angegeben werden. aLink.setAttribute('herunterladen',Name) Dokument.Body.AnhängenUntergeordnetesElement(einLink) einLink.klick() Dokument.Body.RemoveChild(einLink) Fenster.URL.revokeObjectURL(URL) //Nach Abschluss des Downloads können andere Vorgänge ausgeführt werden, z. B. das Aktualisieren der Liste, benutzerfreundliche Eingabeaufforderungen usw.}) } Methodenanalyse Ein Zusammenfassung: Oben wird der benutzerdefinierte Import von Excel-Tabellen implementiert und der von der Schnittstelle zurückgegebene Stream wird automatisch heruntergeladen. Der Code kann direkt verwendet werden, aber beachten Sie, dass die zurückgegebenen Daten möglicherweise nicht mit meiner 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:
|
<<: Die 6 effektivsten Möglichkeiten zum Schreiben von HTML und CSS
1. Funktion Wird hauptsächlich verwendet, um den ...
<br />Beim Textdesign konzentrieren wir uns ...
Inhaltsverzeichnis MySQL Inner Join, Left Join, R...
Bei der Erstellung von Webseiten ist das Anzeigen...
Linearer Farbverlauf Hintergrundbild: linearer Fa...
Ich habe kürzlich an einem Projekt zur Gesichtser...
In MySQL kann das Problem der Groß- und Kleinschr...
(1) Serverkonfiguration: [root@localhost ~]# cd /...
Die Wirkung ist wie folgt:Referenzprogramm: <!...
Linux wird von immer mehr Benutzern geliebt. Waru...
Vorwort Ich habe gerade angefangen, MySQL zu lern...
Zusammenfassung gängiger Operatoren und Operatore...
Inhaltsverzeichnis 1. Szeneneinführung 2 Code-Opt...
Inhaltsverzeichnis 1. Ziehen Sie das Centos-Image...
Verwenden Sie HTML, um eine dynamische Web-Uhr zu...