Vue implementiert die Drag & Drop-Sortierfunktion der Seiten-Div-Box

Vue implementiert die Drag & Drop-Sortierfunktion der Seiten-Div-Box

vue implementiert die Drag & Drop-Sortierfunktion der Div-Box auf der Seite. Vorwort: Es gibt viele Plug-Ins und Methoden auf dem Markt, die die Drag & Drop-Sortierfunktion implementieren. In diesem Abschnitt wird nicht näher darauf eingegangen, sondern nur eine Methode besprochen: die Übergangsgruppenmethode von CSS3

Effektbild:

1. Verwendung im DOM:

    <Übergangsgruppe Klasse="Container" Name="Sortieren">
        <div Klasse = "app-item" v-for = "App in benutzerdefinierten Apps" :key = "app.id" :draggable = "true"
            @dragstart="dragstart(App)"
            @dragenter="dragenter(app,$event)"
            @dragend="getDragend(customApps, 'customer', $event)">
            <div>
                <img class="icon_a" v-if="app.logo" :src="app.logo" >
                <div Klasse="Auslassungspunkte" >{{app.name}}</div>
            </div>
        </div>
    </Übergangsgruppe>

2. Definieren Sie Daten in Daten

    importiere { APi } von '@/api/enterpriseAPi'
    <Skript>
        Standard exportieren {
            Daten() {
                zurückkehren {
                    alteDaten: [],
                    neueDaten: [],
                    benutzerdefinierteApps: [],
                    dragStartId: '',
                    dragEndId: ''
                }
            }
        }
    </Skript>

3. Verwendung in Methoden

    dragstart(Wert) {
        this.oldData = Wert
        this.dragStartId = Wert.id
    },
    dragenter(Wert) {
        this.newData = Wert
        this.dragEndId = Wert.id
    },
    getDragend(listData, Typ) {
            wenn (diese.altenDaten !== diese.neuenDaten) {
                let alterIndex = listData.indexOf(diese.altenData)
                let neuerIndex = listData.indexOf(diese.neuenDaten)
                let newItems = [...listData]
                // Den vorherigen DOM-Knoten löschen newItems.splice(oldIndex, 1)
                // Einen neuen DOM-Knoten am Ende des Drag-Ziels hinzufügen newItems.splice(newIndex, 0, this.oldData)
                // Nachdem jeder Drag abgeschlossen ist, werden die durch den Drag verarbeiteten Daten dem ursprünglichen Array zugewiesen, die DOM-Ansicht wird aktualisiert und die Seite zeigt die Drag-Animation an this.customApps = newItems
                // Rufen Sie die Schnittstelle auf, um Daten jedes Mal zu speichern, wenn der Drag endet. Api(this.dragStartId, this.dragEndId).then((res) => {})
            }
        },

Animationsstil für die Drag-Completion:

    <style lang="scss" scoped>
        .sort-move {
            Übergang: Transformation 1s;
        }
    </Stil>

Dies ist das Ende dieses Artikels über die Verwendung von Vue zum Implementieren der Drag-and-Sort-Funktion von Div-Boxen auf der Seite. Weitere verwandte Inhalte zum Ziehen und Sortieren von Vue-Div-Boxen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die verwandten Artikel weiter unten. Ich hoffe, Sie werden 123WORDPRESS.COM in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Vue implementiert die Funktion zum Ziehen und Sortieren von Listen
  • Vue implementiert Auswahl-, Zieh- und Sortiereffekte basierend auf vuedraggable
  • Vue Drag-Komponente Vuedraggable API-Optionen zum gegenseitigen Ziehen und Sortieren zwischen Boxen
  • Implementierung einer Drag & Drop-Sortierfunktion mit sanften Übergängen basierend auf Vue
  • Verwenden Sie die Vue-Draggable-Komponente, um die Drag & Drop-Sortierung von Tabelleninhalten im Vue-Projekt zu implementieren
  • vue.draggable realisiert den Drag & Drop-Sortiereffekt der Tabelle
  • vuedraggable+element ui realisiert den Drag & Drop-Sortiereffekt von Seitensteuerelementen
  • Detaillierte Erklärung zur Verwendung von vuedraggable, einem Drag-and-Drop-Sortier-Plugin für Vue

<<:  Umfassende Analyse von optimistischer Sperre, pessimistischer Sperre und MVCC in MySQL

>>:  So verwenden Sie ein Domestic Image Warehouse für Docker

Artikel empfehlen

uniapp realisiert die Aufnahme-Upload-Funktion

Inhaltsverzeichnis uni-app Einführung HTML-Teil j...

Tutorial zur Änderung des Root-Passworts in MySQL 5.6

1. Nach der Installation von MySQL 5.6 kann es ni...

Vue-CLI3.x stellt Projekte automatisch auf dem Server bereit

Inhaltsverzeichnis Vorwort 1. Installieren Sie sc...

Konkretes Beispiel einer MySQL-Mehrtabellenabfrage

1. Verwenden Sie die SELECT-Klausel, um mehrere T...

Der Unterschied und die Verwendung von distinct und row_number() over() in SQL

1 Einleitung Wenn wir SQL-Anweisungen schreiben, ...

Canvas zeichnet Rubbellos-Effekt

In diesem Artikel wird der spezifische Code zum Z...

Zusammenfassung des Wissens zu CSS-Injection

Moderne Browser erlauben nicht mehr, JavaScript i...

So verwenden Sie CURRENT_TIMESTAMP in MySQL

Inhaltsverzeichnis Verwendung von CURRENT_TIMESTA...

Führen Sie die folgenden Schritte aus, damit Docker Images abrufen kann

1. Docker Pull zieht das Image Wenn Sie zum Abruf...

jQuery implementiert einen prozentualen Fortschrittsbalken

In diesem Artikel wird der spezifische Code von j...

CSS-Menüschaltflächenanimation

Um ein Dropdown-Menü zu schreiben, klicken Sie au...

Einfache Implementierung von HTML zum Erstellen eines persönlichen Lebenslaufs

Lebenslauf-Code: XML/HTML-CodeInhalt in die Zwisc...

Analyse des Implementierungsprinzips von Vue-Anweisungen

Inhaltsverzeichnis 1. Grundlegende Verwendung 2. ...