Vue verwendet den Rich-Text-Editor vue-quill-editor und lädt Bilder auf den Server hoch

Vue verwendet den Rich-Text-Editor vue-quill-editor und lädt Bilder auf den Server hoch

1. Vorbereitung

vue-quill-editor herunterladen

npm install vue-quill-editor --save oder yarn add vue-quill-editor

2. Definieren Sie die globale Komponente quill-editor

Nach dem Herunterladen von vue-quill-editor müssen wir eine globale Komponente definieren und sie quill-editor nennen

1. Vorlage definieren

<div>
 <Feder-Editor
 v-Modell="Wert"
 ref="meinQuillEditor"
 :Optionen="Editoroption"
 @change="beimEditorwechsel"
 >
 </Feder-Editor>
 <input type="file" hidden accept=".jpg,.png" ref="fileBtn" @change="handleChange" />
</div>

2. Definieren Sie die Rich-Text-Optionskonfiguration

Editoroption: {
 Symbolleiste: [
 ['fett', 'kursiv', 'unterstrichen'], // fett, kursiv, unterstrichen, durchgestrichen, 'durchgestrichen'
 ['blockquote', 'code-block'], //Zitat, Codeblock [{ 'header': 1 }, { 'header': 2 }], //H1 H2
 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::3s::::::333:33333333333333333333ag33333333333333333333333333333 es333333333333333333333333333333 es33 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann dann dann dann aber33333333333333333333 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 dann3 dann3 aber3 dann3 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann nichtie dasen aber aber abersossoss aberstens aberstensss aberten aber abers :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::3s::::::333:33333333333333333333ag33333333333333333333333333333 es333333333333333333333333333333 es33 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann dann dann dann aber33333333333333333333 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 nicht3 dann3 dann3 aber3 dann3 nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht nicht dann nichtie dasen aber aber abersossoss aberstens aberstensss aberten aber abers :::::::::::
}

3. Verwandte Methoden

1. Ändern Sie die ursprüngliche Methode zur Bildbindung im Rich-Text-Editor

montiert() {
 wenn (diese.$refs.myQuillEditor) {
 //Ändern Sie myQuillEditor in Ihr eigenes this.$refs.myQuillEditor.quill.getModule("toolbar").addHandler("image", this.imgHandler);
 }
},
Methoden:{
 imgHandler(Status) {
 wenn (Zustand) {
 		//Klick der Eingabe auslösen, fileBtn durch das eigene this.$refs.fileBtn.click() ersetzen
 }
 }
}

2. Veranstaltungen hochladen

handleChange(e) {
 const Dateien = Array.prototype.slice.call(e.target.files);
 wenn (!Dateien) {
 zurückkehren;
 }
 let formdata = neue FormData();
 formdata.append("Dateiname", files[0].name);
 formdata.append("imgs", Dateien[0]);
 //Mithilfe der Axios-Anforderung this.axios({
 URL: this.$store.state.baseUrl + 'upload/ueditorFile',
 Methode: 'post',
 Daten: Formulardaten,
 Header: {'Client-Identität': localStorage.getItem('Session_ID')}
 }).then((res) => {
 	//Wenn Sie es hier auf leer setzen, wird beim Hochladen desselben Bildes das Änderungsereignis ausgelöst. this.$refs.fileBtn.value = "";
 wenn (res.data.code == 200) {
  Lassen Sie die Auswahl = this.$refs.myQuillEditor.quill.getSelection();
  //Dies ist die zurückgegebene Bildadresse. Wenn die Schnittstelle keine zugängliche Adresse zurückgibt, müssen Sie diese selbst verketten. let imgUrl = this.$store.state.baseUrl + res.data.data; 
  imgUrl = imgUrl.replace(/\\/g,"/") 
			//Holen Sie sich den Federcursor und fügen Sie das Bild this.$refs.myQuillEditor.quill.insertEmbed(selection != null ? selection.index : 0, 'image', imgUrl) ein.   
			//Nachdem das Einfügen abgeschlossen ist, bewegt sich der Cursor eine Position zurück. this.$refs.myQuillEditor.quill.setSelection(selection.index + 1);
 } 
 })
}

Verwenden Sie abschließend diese globale Quill-Komponente in der übergeordneten Komponente und übergeben Sie die relevanten Parameter, die Sie benötigen. Fertig.

Dies ist das Ende dieses Artikels über die Verwendung des Rich-Text-Editors vue-quill-editor in Vue und das Hochladen von Bildern auf den Server. Weitere relevante Inhalte zum Hochladen von Bildern mit vue-quill-editor auf den Server 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:
  • Vue implementiert die Funktion zum Hochladen von Anhängen
  • Spring+Vue integriert UEditor Rich Text zum Hochladen von Bildanhängen
  • Zwei Lösungen für das 404-Problem beim Aktualisieren des Vue-Paket-Upload-Servers
  • Vue + Element + OSS realisiert das Hochladen von Front-End-Fragmenten und die Wiederaufnahme von Haltepunkten
  • Basierend auf Vue-Simple-Uploader, kapselt die globale Upload-Plug-In-Funktion des Dateisegment-Uploads, des sofortigen Uploads und der Breakpoint-Fortsetzung
  • Vue-Formular-Post-Anforderung kombiniert mit Servlet zur Realisierung der Datei-Upload-Funktion
  • Realisieren Sie mobile Bild-Upload-, Komprimierungs-, Drag-and-Drop-Sortierungs- und Drag-and-Drop-Löschfunktionen basierend auf Vue2
  • Was Sie beim Hochladen von Bildern mit vue+vant beachten sollten
  • Vue realisiert das Hochladen nach dem Zuschneiden von Bildern
  • Implementierungsbeispiel zum Hochladen mehrerer Anhänge in Vue

<<:  Implementierung eines einfachen Studenteninformationsmanagementsystems auf Basis von VUE

>>:  Vue implementiert eine Eingabekomponente, die den Tastenkombinationseffekt der Tastenanzeige erhält

Artikel empfehlen

Beispiel für das Erreichen eines Deckeneffekts mit dem WeChat-Applet

Inhaltsverzeichnis 1. Umsetzung 2. Probleme 3. Üb...

So verwenden und begrenzen Sie Requisiten in React

Die Requisiten der Komponente (Requisiten sind ei...

So verwenden Sie Webstorm und Chrome zum Debuggen von Vue-Projekten

Inhaltsverzeichnis Vorwort 1. Erstellen Sie ein n...

Centos erstellt ein Prozessdiagramm für den Chrony-Zeitsynchronisationsserver

Meine Umgebung: 3 centos7.5 1804 Meister 192.168....

Beispielmethode zum Anzeigen von IP in Linux

Die Kenntnis der IP-Adresse eines Geräts ist wich...

Eine Zusammenfassung detaillierter Einblicke in den Import von CSS

Auf die Entwicklungsgeschichte von CSS wird hier ...

So verwenden Sie Docker zum Erstellen eines privaten pypi-Repositorys

1. Konstruktion 1. Bereiten Sie die Datei htpassw...

CentOS7-Installations-Tutorial für Zabbix 4.0 (Abbildung und Text)

Deaktivieren Sie SeLinux setenforce 0 Dauerhaft g...

Zusammenfassung zum Hinzufügen von Root-Berechtigungen für Benutzer in Linux

1. Fügen Sie einen Benutzer hinzu . Verwenden Sie...

Beispielschritte zur Verwendung von AntV X6 mit Vue.js

Inhaltsverzeichnis 0x0 Einführung 0x1 Installatio...