Das Element UI-Tabelle verfügt nicht über eine integrierte Drag-and-Drop-Sortierfunktion und kann nur mithilfe eines Drittanbieter-Plug-Ins, Sortablejs, implementiert werden. Schauen wir uns zunächst das dynamische Bild an, um zu sehen, ob der gewünschte Effekt erzielt wird. Zuerst müssen Sie Sortable.js installieren npm installiere sortablejs --save Dann zitieren Sortable aus „sortablejs“ importieren Zu beachten ist dabei, dass das Element Tabelle einen Zeilenschlüssel angeben muss, welcher eindeutig sein muss, beispielsweise eine ID, da es sonst zu Fehlsortierungen kommt. ###Beispielcode <Vorlage> <div Stil="Breite:800px"> <el-table :data="Tabellendaten" Grenze Zeilenschlüssel="id" ausrichten="links"> <el-table-column v-for="(Element, Index) in Spalte" :Schlüssel="`col_${index}`" :prop="Abwurfspalte[index].prop" :label="Artikel.label"> </el-Tabellenspalte> </el-Tabelle> <pre style="text-align: left"> {{dropCol}} </pre> <hr> <pre style="text-align: left"> {{tableData}} </pre> </div> </Vorlage> <Skript> Sortable aus „sortablejs“ importieren Standard exportieren { Daten() { zurückkehren { Spalte: [ { Bezeichnung: 'Datum', Requisite: "Datum" }, { Bezeichnung: 'Name', Requisite: "Name" }, { Bezeichnung: 'Adresse', Requisite: "Adresse" } ], Spalte löschen: [ { Bezeichnung: 'Datum', Requisite: "Datum" }, { Bezeichnung: 'Name', Requisite: "Name" }, { Bezeichnung: 'Adresse', Requisite: "Adresse" } ], Tabellendaten: [ { ID: '1', Datum: '2016-05-02', Name: „Geburtstagsgeschenk 1“, Adresse: „Nr. 100, Jinshajiang Road, Bezirk Putuo, Shanghai“ }, { ID: '2', Datum: '2016-05-04', Name: „王小虎2“, Adresse: „Nr. 200, Jinshajiang Road, Bezirk Putuo, Shanghai“ }, { ID: '3', Datum: '2016-05-01', Name: „王小虎3“, Adresse: „Nr. 300, Jinshajiang Road, Bezirk Putuo, Shanghai“ }, { ID: '4', Datum: '2016-05-03', Name: „王小虎4“, Adresse: „Nr. 400, Jinshajiang Road, Bezirk Putuo, Shanghai“ } ] } }, montiert() { dies.rowDrop() diese.columnDrop() }, Methoden: { //Zeile ziehen rowDrop() { const tbody = document.querySelector('.el-table__body-wrapper tbody') const _this = dies Sortable.create(tbody, { amEnde({ neuerIndex, alterIndex }) { const currRow = _this.tableData.splice(alterIndex, 1)[0] _this.tableData.splice(neuerIndex, 0, aktuelleZeile) } }) }, //Spalte ziehen columnDrop() { const wrapperTr = document.querySelector('.el-table__header-wrapper tr') dies.sortable = Sortable.create(wrapperTr, { Animation: 180, Verzögerung: 0, am Ende: evt => { const oldItem = this.dropCol[evt.oldIndex] this.dropCol.splice(evt.alterIndex, 1) this.dropCol.splice(evt.neuerIndex, 0, altesElement) } }) } } } </Skript> <Stilbereich> </Stil> Damit ist dieser Artikel über die Implementierungsbeispiele zum Ziehen von Zeilen und Spalten in Elementtabellen abgeschlossen. Weitere relevante Inhalte zum Ziehen von Zeilen und Spalten in Elementtabellen 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 legen Sie die Parameter für die Post-Request-Druckeranforderung für Nginx-Protokolle fest
>>: Zusammenfassung zur Verwendung von HTML-Meta-Tags (empfohlen)
Einführung Da die Anforderungen an die Computerte...
Nehmen Sie als Beispiel die Bereitstellung von ht...
1. Geschäftsszenario Ich habe kürzlich Entwicklun...
In diesem Artikelbeispiel wird der spezifische Co...
Was ist k3d? k3d ist ein kleines Programm zum Aus...
Inhaltsverzeichnis 1. Hintergrund: 2. Gestaltungs...
Einführung MySQL bietet einen EXPLAIN-Befehl, der...
In diesem Artikel wird der spezifische Code von N...
Aufgezeichnetes MySQL 5.7.9-Installationstutorial...
1 Tomcat herunterladen und starten Gehen Sie auf ...
So funktioniert PHP Lassen Sie uns zunächst die B...
1. Langsames Abfrageprotokoll 1.1 MySQL-Protokoll...
Vorwort Die allgemeinen Methoden sind hier nicht ...
In diesem Artikelbeispiel wird der spezifische Co...
Datenschnittstelle zum Bereitstellen der Anmeldun...