1. Grundlegende VerwendungIch habe kürzlich die el-upload-Komponente studiert und bin dabei auf einige kleine Fehler gestoßen. Ich habe es aufgeschrieben, damit jeder es lernen kann Es ist sehr üblich, die Komponenten des Elements direkt zur Verwendung zu kopieren, aber bei der Verwendung der Upload-Komponente treten Probleme auf. Wenn Sie den Upload direkt verwenden, wird dieser Fehler auf jeden Fall auftreten Und die hochgeladenen Bilder können plötzlich verschwinden. Wenn Sie zu diesem Zeitpunkt keine Schnittstelle haben, wissen Sie nicht, warum sie entfernt wurden. Wenn also keine Schnittstelle vorhanden ist, können Sie nur raten, ob das Bild aufgrund eines domänenübergreifenden Fehlers verschwunden ist. Schließlich habe ich die Adresse des Unternehmens erhalten und die Schnittstelle angepasst. Die Antwort war richtig: action="https://jsonplaceholder.typicode.com/posts/". Dies ist der Aktionsparameter im Element. Bei Verwendung von HTML wird Ajax aufgerufen, wodurch die Same-Origin-Policy anders wird und ein Fehler auftritt. Im Allgemeinen stellt das Unternehmen einen Adresslink zum Konvertieren des Bildes in ein URL-Format bereit. Sie müssen ihn nur aufrufen und speichern. Möglicherweise benötigen Sie jedoch Token-Berechtigungen. Zu diesem Zeitpunkt gibt es etwas, das selten getan wird. Im Allgemeinen wird das Token nicht direkt über die Komponente übertragen, sodass das Token über die el-upload-Komponente übertragen werden muss. <el-hochladen Aktion="https://xxxx Adresse" :header="Header importieren" > </el-upload> importiere {getToken} von '@/utils/token' Daten() { zurückkehren { importHeaders: {token: getToken()}, }; }, 2. Bildmengenkontrolle<el-hochladen Aktion="https://security.brofirst.cn/api/common/upload" :header="Header importieren" :Grenze="Grenze" :on-exceed="MasterdateiMax" > <i class="el-icon-plus"></i> </el-upload> // Wie viele Bilder können maximal hochgeladen werden masterFileMax(files, fileList) { console.log(Dateien, Dateiliste); this.$message.warning(`Bitte laden Sie höchstens ${this.limit} Dateien hoch.`); }, 3. Bildformatbeschränkungen/mehrere Bilder können ausgewählt werden<el-hochladen akzeptieren=".JPG, .PNG, .JPEG,.jpg, .png, .jpeg" mehrere > <i class="el-icon-plus"></i> </el-upload> Beispiel <el-hochladen Aktion="https://xxxx" :header="Header importieren" Listentyp = "Bildkarte" :on-preview="handleBildkartenvorschau" :on-remove="handleEntfernen" :bei-Erfolg="handleAvatarSuccess" :Grenze="Grenze" :on-exceed="MasterdateiMax" akzeptieren=".JPG, .PNG, .JPEG,.jpg, .png, .jpeg" mehrere > <i class="el-icon-plus"></i> </el-upload> <Skript> importiere {getToken} von '@/utils/token' Standard exportieren { Name: „Feedback“, Daten() { zurückkehren { importHeaders: {token: getToken()}, Bilder:[], Grenze:9 }; }, Methoden: { //Bild löschen handleRemove(file, fileList) { const idx = this.images.findIndex(it=>it===file.response.data.fullurl) dies.images.splice(idx,1) }, handlePictureCardPreview(Datei) { this.dialogImageUrl = Datei.URL; this.dialogVisible = true; }, //Daten nach erfolgreichem Upload handleAvatarSuccess(response, file, fileList){ console.log(Antwort, Datei, Dateiliste); wenn(Antwort.code===1){ dies.bilder.push(antwort.daten.volleURL) } }, // Wie viele Bilder können maximal hochgeladen werden masterFileMax(files, fileList) { console.log(Dateien, Dateiliste); this.$message.warning(`Bitte laden Sie höchstens ${this.limit} Dateien hoch.`); } } }; </Skript> Ergänzung: Verwenden Sie die Upload-Komponente von element-ui im Vue-Projekt<el-hochladen v-sonst Klasse = "sicherstellen, dass Butt" :Aktion="Datei-Url importieren" :data="Daten hochladen" Name="Importdatei" :beiFehler="UploadFehler" :onSuccess="Uploaderfolgreich" :beforeUpload="vorAvatarUpload" > <el-button size="small" type="primary">OK</el-button> Unter ihnen ist importFileUrl die Hintergrundschnittstelle, upLoadData ist der zusätzliche Parameter, der beim Hochladen von Dateien hochgeladen werden muss, uploadError ist die Rückruffunktion, wenn der Dateiupload fehlschlägt, uploadSuccess ist die Rückruffunktion, wenn der Dateiupload erfolgreich ist, und beforeAvatarUpload ist die Funktion, die vor dem Hochladen der Datei aufgerufen wird. Hier können wir den Dateityp beurteilen. Daten () { importFileUrl: 'http:dtc.com/cpy/add', Daten hochladen: { cpyId: '123456', auftretenZeit: '2017-08' } }, Methoden: { // Rückruf nach erfolgreichem UploaduploadSuccess (response, file, fileList) { console.log('Datei hochladen', Antwort) }, // Upload-Fehler uploadError (Antwort, Datei, Dateiliste) { console.log('Upload fehlgeschlagen, bitte versuchen Sie es erneut!') }, //Bestimmen Sie die Dateigröße vor dem Hochladen beforeAvatarUpload (file) { const Erweiterung = Datei.Name.Split('.')[1] === 'xls' const extension2 = datei.name.split('.')[1] === 'xlsx' const extension3 = datei.name.split('.')[1] === 'doc' const extension4 = datei.name.split('.')[1] === 'docx' const isLt2M = Dateigröße / 1024 / 1024 < 10 wenn (!Erweiterung && !Erweiterung2 && !Erweiterung3 && !Erweiterung4) { console.log('Die hochgeladene Vorlage kann nur im xls-, xlsx-, doc- oder docx-Format vorliegen!') } wenn (!isLt2M) { console.log('Die Größe der hochgeladenen Vorlage darf 10 MB nicht überschreiten!') } Erweiterung zurückgeben || Erweiterung2 || Erweiterung3 || Erweiterung4 && isLt2M } } Dies ist das Ende dieses Artikels über die Verwendung der Element-el-upload-Komponente in Vue. Weitere relevante Inhalte zur Vue-Element-el-upload-Komponente finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: So zeigen Sie den Nginx-Konfigurationsdateipfad und den Ressourcendateipfad an
>>: MySQL Master-Slave-Replikationsprinzip und zu beachtende Punkte
Kompatibel mit neuen CSS3-Eigenschaften In CSS3 k...
Dieser Artikel beschreibt verschiedene Möglichkei...
Beim Erstellen einer Webseite müssen wir normaler...
Inhaltsverzeichnis Variabler Typ und Speicherplat...
Wenn Sie Dateien zwischen Windows und Linux übert...
brew install nginx Apple Mac verwendet zur Instal...
In diesem Artikel werden die Installations- und K...
Bei der Verwendung von HTML-Tabellen müssen wir m...
In letzter Zeit waren viele datenbankbezogene Vor...
In Vue haben wir im Allgemeinen Front-End- und Ba...
1. Die Beziehung zwischen Schriftarten und Zeiche...
1. Stilobjekt Das Stilobjekt stellt eine einzelne...
Vorwort Die MySQL-Abfrage verwendet den Select-Be...
Inhaltsverzeichnis 1. Komponentenregistrierung 2....
Nach der Konfiguration der TabBar im WeChat-Apple...