So verwenden Sie die ElementUI-Paginierungskomponente Paginierung in Vue

So verwenden Sie die ElementUI-Paginierungskomponente Paginierung in Vue

Die Verwendung der ElementUI-Paging-Komponente Pagination in Vue dient Ihnen als Referenz. Der spezifische Inhalt ist wie folgt

1. Übersicht

ElementUI stellt die Komponente el-pagination bereit. Die Paginierung kann durch die Konfiguration der entsprechenden Parameter und Ereignisse erreicht werden.

2. Umsetzung

1. Grundlegende Verwendung

<div Klasse="pagination">
    <el-pagination
      Hintergrund
      Layout = "Gesamt, Größen, Zurück, Pager, Weiter, Jumper"
      :current-page="Tabellenseite.Seitennummer"
      :Seitengröße="Tabellenseite.Seitengröße"
      :page-sizes="Seitengrößen"
      :total="Tabellenseite.total"
      @size-change="Größenänderungsgriff"
      @current-change="Seitenänderungshandle"
    />
</div>
Daten() {
    zurückkehren {
      Tabellenseite: {
        pageNum: 1, // Seitenzahl pageSize: 10, // Anzahl der Datensätze pro Seite total: 0 // Gesamtzahl der Datensätze },
      Seitengrößen: [10, 20, 30]
    }
  },
  Methoden: {
    handleSeitenänderung(aktuelleSeite) {
      diese.Tabellenseite.Seitennummer = aktuelleSeite
      // Daten hier aktualisieren},
    handleSizeChange(Seitengröße) {
      this.tablePage.pageSize = Seitengröße
      // Daten hier aktualisieren}
  }

2. Implementierung des Backend-Paging

Implementierungsidee: Senden Sie eine Anfrage an das Backend, übergeben Sie die beiden Parameter pageNum und pageSize und erhalten Sie direkt die entsprechenden Paging-Daten.

// Daten holen getData() {
      let param = {
        Seitennummer: diese.Tabellenseite.Seitennummer,
        Seitengröße: this.tablePage.pageSize
      }
      // Backend-Schnittstelle anfordern Funktion getDataApi(param, { loading: true }).then(res => {
        //Hintergrunddaten zurückgeben this.list = res.data.list
        diese.tablePage.total = res.data.total
      })
    },

3. Implementierung des Front-End-Paging

Implementierungsidee: Senden Sie eine Anforderung an den Hintergrund, um alle Daten abzurufen. Das Front-End verarbeitet die Daten über pageNum und pageSize und erhält schließlich die entsprechenden Paging-Daten. Es gibt zwei Möglichkeiten, die Daten zu verarbeiten:

1. Verwenden Sie Array.slice, um das gewünschte Array-Fragment zu extrahieren (diese Methode berücksichtigt die Gesamtzahl der Seiten „1“ und die letzte Seite).
2. Verwenden Sie Array.filter, um das gewünschte Array-Fragment herauszufiltern (bei dieser Methode muss nicht berücksichtigt werden, dass die Gesamtzahl der Seiten "1" und die letzte Seite ist, solange die Bedingungen erfüllt sind

/**
     * Verarbeitung der Seitennummerierungsdaten * @param data [Array] Zu paginierende Daten * @param num [Zahl] Aktuelle Seite * @param size [Zahl] Anzahl der pro Seite anzuzeigenden Elemente */
    getList(Daten, Anzahl, Größe) {
      Liste, Gesamt, Start, Ende, istErstes, istLetztes
      Gesamt = Datenlänge
      isFirst = Gesamt < Größe
      isLast = Math.ceil(Gesamt / Größe) === Num
      Start = (Zahl - 1) * Größe
      Ende = istErstes || istLetztes ? Start + (Gesamtgröße %) : Start + Größe
      Liste = Daten.Slice(Start, Ende)
      Liste.fürJedes((Element, Index) => {
        item.seq = Index + Start
      })
      Rückgabeliste
    }
    /**
     * Verarbeitung der Seitennummerierungsdaten * @param data [Array] Zu paginierende Daten * @param num [Zahl] Aktuelle Seite * @param size [Zahl] Anzahl der pro Seite anzuzeigenden Elemente */
    getList(Daten, Anzahl, Größe) {
      Liste starten, beenden
      Start = (Zahl - 1) * Größe
      Ende = Start + Größe
      Liste = Daten.Filter((Element, Index) => {
        Rückgabeindex >= Start und Index < Ende
      })
      Liste.fürJedes((Element, Index) => {
        item.seq = Index + Start
      })
      Rückgabeliste
}

Zusammenfassung: Unabhängig davon, ob es sich um Front-End-Paging oder Back-End-Paging handelt, werden letztendlich zwei Parameter benötigt: pageNum (aktuelle Seite) und pageSize (Anzahl der Einträge pro Seite).

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Tabellen-Paging-Funktion implementiert durch Vue2.0+ElementUI+PageHelper
  • Die Vue-Komponentenbibliothek ElementUI realisiert den Paging-Effekt einer Tabellenliste
  • Detaillierte Erklärung des Problems, dass die Paging-Komponentenansicht von elementUI nicht aktualisiert wird, wenn Vue sie ändert
  • Die Komponententabelle von vue + elementUI realisiert die Front-End-Paging-Funktion
  • Vue + ElementUI-Tabelle realisiert Tabellenpaging
  • Vue + ElementUI implementiert Paging-Funktion - MySQL-Daten

<<:  So fragen Sie einen Datensatz in MySQL ab, auf welcher Seite der Paging-Seite

>>:  VMware virtuelle Maschine installieren CentOS 8 (1905) System-Tutorial-Diagramm

Artikel empfehlen

Tiefgreifendes Verständnis der sieben Kommunikationsmethoden von Vue-Komponenten

Inhaltsverzeichnis 1. Requisiten/$emit Einführung...

So verwenden Sie Elemente in React-Projekten

Dies ist mein erstes Mal, dass ich das Element-Fr...

Countdown-Effekt mit Javascript implementieren

Verwenden Sie Javascript, um den Countdown-Effekt...

Detaillierter Installationsprozess und Prinzip des Vue-Routers

Inhaltsverzeichnis 1. Implementierungsprinzip des...

Implementierung der Multisite-Konfiguration von Nginx auf Mac M1

Hinweis: nginx über brew installiert Stammverzeic...

VMware12.0-Installation Ubuntu14.04 LTS-Tutorial

Ich habe verschiedene Images sowohl unter virtuel...

Vue+Element - benutzerdefinierte Abfragekomponente

In diesem Artikel wird hauptsächlich das Vue-Proj...

Tools zur Bildoptimierung für Webseiten und Tipps zur Verwendung

Als grundlegendes Element einer Webseite sind Bil...

Detaillierte Erklärung von MySQL-Transaktionen und MySQL-Protokollen

Transaktionale Merkmale 1. Atomarität: Nach dem S...

So erstellen Sie dynamische QML-Objekte in JavaScript

1. Objekte dynamisch erstellen Es gibt zwei Mögli...

VUE + OPENLAYERS erreicht Echtzeit-Positionierungsfunktion

Inhaltsverzeichnis Vorwort 1. Etikettenstil defin...

Tipps zum Organisieren von Zeichenfolgen in Linux

Bei Linux-Operationen ersetzen und zählen wir häu...