Beispiel für die Implementierung des Ziehens von Zeilen und Spalten in einer Elementtabelle

Beispiel für die Implementierung des Ziehens von Zeilen und Spalten in einer Elementtabelle

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:
  • Detaillierte Erklärung zum Ziehen von Tabellenspalten mit Vue Element Sortablejs
  • Elementui-Tabellenkomponente + sortablejs zum Implementieren von Beispielcode für die Zeilensortierung per Drag & Drop
  • Ein Beispiel für die Verwendung von sortable+element zum Ziehen von Tabellenzeilen

<<:  So legen Sie die Parameter für die Post-Request-Druckeranforderung für Nginx-Protokolle fest

>>:  Zusammenfassung zur Verwendung von HTML-Meta-Tags (empfohlen)

Artikel empfehlen

Prinzip des Linux-Nohup-Befehls und Beispielanalyse

nohup-Befehl Bei der Verwendung von Unix/Linux mö...

So verwenden Sie mysqldump für vollständige und zeitpunktbezogene Sicherungen

Mysqldump wird für logische Backups in MySQL verw...

Vergleichende Analyse der Hochverfügbarkeitslösungen von Oracle und MySQL

Was die Hochverfügbarkeitslösungen für Oracle und...

Das WeChat-Applet implementiert den Serveraufbau des Benutzeranmeldemoduls

Ich habe node.js zum Erstellen des Servers gewähl...

js zum Aufrufen der Netzwerkkamera und Behandeln häufiger Fehler

Vor kurzem musste ich aus geschäftlichen Gründen ...

So aktualisieren Sie die Knotenversion unter CentOs manuell

1. Suchen Sie das entsprechende NodeJS-Paket unte...

CentOS 8 Installationshandbuch für Zabbix 4.4

Zabbix-Serverumgebungsplattform ZABBIX Version 4....

Analysieren der häufig verwendeten v-Anweisungen in vue.js

Inhaltsverzeichnis Erklärung des V-Texts bei „if“...

Detailliertes Beispiel zum Ändern des Linux-Kontokennworts

Passwort des persönlichen Kontos ändern Wenn norm...

Tipps zur Konvertierung von MySQL-Spalten in Zeilen (teilen)

Vorwort: Weil viele Geschäftstabellen Entwurfsmus...

So verwenden Sie die Verlaufsumleitung in React Router

In react-router kann der Sprung in der Komponente...

So erstellen Sie eine Baidu-Totlink-Datei

Baidu definiert zwei Arten von toten Linkformaten:...

Stabile Version von MySQL 8.0.18 veröffentlicht! Hash Join ist wie erwartet da

Die stabile Version (GA) von MySQL 8.0.18 wurde g...

Beherrschen Sie die häufig verwendeten HTML-Tags zum Zitieren von Inhalten auf Webseiten.

Verwenden Sie „blockquote“ für lange Zitate, „q“ ...

So erhalten Sie die dynamische Anzahl der verbleibenden Wörter im Textbereich

Ich bin bei der Arbeit auf einen Fall gestoßen, ü...