Detaillierte Erläuterung der Persistenz des Vue-Seitenstatus

Detaillierte Erläuterung der Persistenz des Vue-Seitenstatus

Voraussetzung : linker Baum und rechter Tisch. Nachdem Sie im Organisationsbaum einen Knoten ausgewählt haben, rufen Sie die Detailseite auf und lassen Sie ihn bei der Rückkehr ausgewählt. Auch andere Abfragebedingungen müssen ihren Status beibehalten.

Idee : Verwenden Sie vuex in Kombination mit localStorage zum Zwischenspeichern von Daten. Wenn auf einen Baumknoten oder eine Abfrageschaltfläche geklickt wird, werden die Daten in vuex und auch in localStorage gespeichert. Wenn die Seite zurückgesetzt wird, werden die Daten in localStorage in vuex übertragen. Im Seitencode wird ermittelt, ob in vuex gespeicherte Daten vorhanden sind. Wenn dies der Fall ist, werden diese direkt verwendet. Wenn nicht, werden standardmäßig die ursprünglichen Daten verwendet. Wenn die Seitennavigationsroute springt, werden die zwischengespeicherten Seitendaten gelöscht.

Code:

Wenn auf einen Baumknoten geklickt wird, wird die ID in Vuex gespeichert. Auslösen von Aktionen durch Versand

dies.$store.dispatch('SetDeviceFaultId', data.id)

Lösen Sie in den Aktionen von vuex die Methoden in Mutationen aus, indem Sie committen

RemoveDeviceFaultId({ commit }) { //commit('REMOVE_DEVICEFAULTID') wird später zum Löschen der Daten verwendet;
},
SetDeviceManageId({ commit }, id) {  
    commit('SET_DEVICEMANAGEID', id);
},

mutations : Daten ändern

REMOVE_DEVICEFAULTID: (Status) => {
      state.devicFaultId = null     
      Speicher.entfernen('devicFaultId');
},
SET_DEVICEMANAGEID: (Status, Geräteverwaltungs-ID) => {
      state.deviceManageId = Geräte-ManageId
      Speicher.set('deviceManageId', deviceManageId);
}

Status: Beim ersten Erstellen der Seite zwischengespeicherte Daten aus dem lokalen Speicher abrufen

devicFaultId: Storage.get('devicFaultId'),

Rufen Sie eine Detailseite auf und kehren Sie zurück

this.params.organizeId = this.$store.state.tree.devicFaultId ? this.$store.state.tree.devicFaultId : res.data[0].id;

Wenn Sie auf andere Routen klicken, denken Sie daran, die zwischengespeicherten Daten zu löschen

dies.$store.dispatch('RemoveDeviceFaultId')

Auffüllen:

storage.js -Code

Nachdem Sie es in vuex eingeführt haben, können Sie es über Storage.set verwenden

Zusammenfassen

Dieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalt auf 123WORDPRESS.COM lesen können!

Das könnte Sie auch interessieren:
  • So implementieren Sie Datenpersistenz mit dem Vuex-Drittanbieterpaket
  • Ideen und Codes zur Implementierung der Vuex-Datenpersistenz
  • Vuex implementiert Datenzustandspersistenz
  • Das Vuex-Persistenz-Plugin (vuex-persistedstate) löst das Problem des Verschwindens von Aktualisierungsdaten
  • Implementierungscode für persistente Speicherdaten im Vue-Projekt

<<:  Detaillierte Erklärung verschiedener Bildformate wie JPG, GIF und PNG

>>:  Zusammenfassung der Blockelemente, Inline-Elemente und variablen Elemente

Artikel empfehlen

Mit CSS3 erstellte Buchseitenumblättereffekte

Ergebnis:Implementierungscode: html <!-- Wenn ...

Was ist SSH-Portweiterleitung? Was nützt das?

Inhaltsverzeichnis Vorwort 1. Lokale Portweiterle...

So schreiben Sie mithilfe von Filtern transparentes CSS für Bilder

So schreiben Sie mithilfe von Filtern transparente...

Ein kurzer Vortrag über MySQL-Pivottabellen

Ich habe eine Produktteiletabelle wie diese: Teil...

Machen Sie sich nicht die Mühe mit JavaScript, wenn es mit CSS geht

Vorwort Jede Anwendung, die in JavaScript geschri...

Fallstricke und Lösungen für das Upgrade von MySQL 5.7.23 in CentOS 7

Vorwort Kürzlich bin ich beim Upgrade von MySQL 5...

Einführung in CSS-Stileinführungsmethoden und ihre Vor- und Nachteile

Drei Möglichkeiten, CSS einzuführen 1. Inline-Sti...

Detaillierte Untersuchung des MySQL-Verbundindex

Ein zusammengesetzter Index (auch gemeinsamer Ind...

WeChat Mini-Programm implementiert den Likes-Dienst

In diesem Artikel wird der spezifische Code für d...