So leeren Sie den Cache nach der Verwendung von Keep-Alive in Vue

So leeren Sie den Cache nach der Verwendung von Keep-Alive in Vue

Was ist Keepalive?

Bei der normalen Entwicklung müssen einige Komponenten nicht mehrmals initialisiert werden. Zu diesem Zeitpunkt müssen wir die Komponenten beibehalten, damit der Status der Komponenten unverändert bleibt und die Komponenten bei der nächsten Anzeige nicht erneut initialisiert werden.

Mit anderen Worten: Keepalive ist eine integrierte Komponente von Vue, die es den enthaltenen Komponenten ermöglicht, ihren Status beizubehalten oder ein erneutes Rendern zu vermeiden. Dies wird als Komponenten-Caching bezeichnet.

Grundlegende Verwendung

<am Leben erhalten>
    <component /> //Ihre Komponente</keep-alive>

Voraussetzung: Beim Aufruf der Detailseite von der Listenseite und der anschließenden Rückkehr zur Listenseite bleiben die Abfragebedingungen erhalten, beim Wechsel auf andere Reiter werden die Abfragebedingungen jedoch gelöscht.

Lösung: Es ist sehr einfach, die Abfragebedingungen beizubehalten, führen Sie einfach Keep-Alive direkt ein. Wenn Sie sie jedoch löschen möchten, verfügt Vue selbst nicht über eine API, um sie direkt zu löschen. Sie müssen dies daher separat handhaben.

Referenzartikel: http://aspedrom.com/5HD5

Router/Index, fängt die Route ab und verarbeitet sie:

vorRouteVerlassen:Funktion(nach, von, weiter){
    // Keep-Alive-Löschung beim Verlassen der Route hinzufügen
    wenn (von && von.meta.rank && bis.meta.rank && von.meta.rank == bis.meta.rank)
    {//Die Entscheidung hier ist, ob Sie zur vorherigen Ebene zurückkehren. Sie können die Entscheidungslogik hier entsprechend Ihrem eigenen Geschäft ändern und entscheiden, ob der Cache dieser Ebene zerstört werden soll.
        wenn (dieser.$vnode und dieser.$vnode.data.keepAlive)
        {
            wenn (dies.$vnode.parent && dies.$vnode.parent.componentInstance && dies.$vnode.parent.componentInstance.cache)
            {
                wenn (this.$vnode.componentOptions)
                {
                    var Schlüssel = this.$vnode.key == null
                                ? dies.$vnode.componentOptions.Ctor.cid + (dies.$vnode.componentOptions.tag ? `::${this.$vnode.componentOptions.tag}` : '')
                                : dies.$vnode.key;
                    var cache = this.$vnode.parent.componentInstance.cache;
                    var Schlüssel = this.$vnode.parent.componentInstance.keys;
                    if (Cache[Schlüssel])
                    {
                        if (Schlüssel.Länge) {
                            var index = keys.indexOf(Schlüssel);
                            wenn (Index > -1) {
                                Schlüssel.splice(Index, 1);
                            }
                        }
                        Cache[Schlüssel] löschen;
                    }
                }
            }
        }
        dies.$destroy();
    }
    nächste();
},

Fügen Sie der Route auch Metadaten hinzu:

{
    //Pfad der Kontoliste: '/account',
    Name: "Konto",
    Komponente: () => import('../views/account/index.vue'),
    Meta: {Titel: „Kontenliste“, Rang: 1,5}
  },
  {
    //Kontopfad hinzufügen: '/accountadd',
    Name: 'accountadd',
    Komponente: () => import('../views/account/add.vue'),
    Meta: {Titel: „Konto hinzufügen“, Rang: 2,5}
  },
  {
    // Kontopfad bearbeiten: '/accountedit/:id',
    Name: 'accountedit',
    Komponente: () => import('../views/account/add.vue'),
    Meta: {Titel: „Konto bearbeiten“, Rang: 2,5}
  },
  {
    // Rollenlistenpfad: '/role',
    Name: "Rolle",
    Komponente: () => import('../views/role/index.vue'),
    Meta: {Titel: „Rollenliste“, Rang: 1,5}
  },

Zusammenfassen

Dies ist das Ende dieses Artikels zum Leeren des Caches nach der Verwendung von Keep-Alive in Vue. Weitere relevante Inhalte zum Leeren des Keep-Alive-Cache finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Die Keep-Alive-Komponente in Vue implementiert das Caching mehrstufiger verschachtelter Routen
  • Detaillierte Erläuterung des Routing Guard- und Keep-Alive-Lebenszyklus von Vue
  • Detaillierte Erklärung zu Keep-Alive in Vue
  • Keep-Alive-Multilevel-Routing-Cache-Problem in Vue
  • Detaillierte Erläuterung der Keep-Alive- und Unified-Routing-Verarbeitung von Vue3-Cache-Seiten
  • Analyse des Implementierungsprinzips von Vue Keep-Alive

<<:  Schritte zur Überprüfung der MySQL InnoDB-Row_ID-Grenzwertüberschreitung

>>:  Tutorial zur Installation der PyTorch-Entwicklungsumgebung unter Windows

Artikel empfehlen

Implementierung der MVCC-Mehrversions-Parallelitätskontrolle von MySQL

1 Was ist MVCC Der vollständige Name von MVCC lau...

Zusammenfassung der Vorteile der Bereitstellung von MySQL Delayed Slaves

Vorwort Die Master-Slave-Replikationsbeziehung vo...

Tutorial zur Installation einer MySQL-ZIP-Datei

In diesem Artikel wird die spezifische Methode zu...

So erhalten Sie den tatsächlichen Pfad des aktuellen Skripts in Linux

1. Holen Sie sich den tatsächlichen Pfad des aktu...

Vorteile und Probleme des XHTML CSS Website Designs

XHTML ist die derzeit international verbreitete S...

Detaillierte Erklärung der Docker Compose-Verwendung

Inhaltsverzeichnis Docker Compose-Nutzungsszenari...

Verwendung des Linux-Befehls ipcs

1. Befehlseinführung Der Befehl ipcs wird verwend...

Detaillierte Erklärung des Workbench-Beispiels in MySQL

MySQL Workbench – Modellierungs- und Designtool 1...