Dieser Artikel stellt hauptsächlich das Umschalten von Komponenten in Vue und die Cache-Lösung vor 1. KomponentenwechselmethodeMethode 1: Verwenden Sie v-if und v-else// Wenn die Variable Flag wahr ist, wird die Komponente comp-a angezeigt, andernfalls wird die Komponente comp-b angezeigt <comp-a v-if="flag"></comp-a> <comp-b v-else></comp-b> Methode 2: Integrierte Komponenten verwenden: <component></component>// Klicken Sie hier, um die Komponenten „Anmeldung“, „Registrierung“ und „Beenden“ zu wechseln <template> <div> <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" @click.prevent="comName = 'login'">Anmelden</a> <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" @click.prevent="comName = 'register'">Registrieren</a> <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" @click.prevent="comName = 'logOut'">Abmelden</a> // <component></component> um die Komponente mit dem entsprechenden Namen anzuzeigen, der einem Platzhalter entspricht // Das Attribut :is gibt den Komponentennamen an <component :is="comName"></component> </div> </Vorlage> Methode 3: vue-router// Routing-Regeln: { Pfad: '/login', Name: 'Anmelden', Komponente: () => import('../views/login.vue') }, { Pfad: '/register', Name: 'register', Komponente: () => import('../views/register.vue') }, //Wo die Komponente angezeigt werden soll: <Router-Ansicht /> 2. Komponenten-Caching: Keep-AliveZwischenspeichern Sie Komponenten nach Bedarf, anstatt sie zu zerstören und neu zu erstellen, wie im tatsächlichen Szenario am Anfang dieses Artikels 1.Keep-Alive-Definition Wenn <keep-alive> ist eine abstrakte Komponente: Es rendert selbst kein DOM-Element und erscheint auch nicht in der übergeordneten Komponentenkette. Wenn eine Komponente innerhalb von 2.Keep-Alive-Lebenszyklusaktiviert Wird aufgerufen, wenn die deaktiv Dieser Hook wird aufgerufen, wenn die Komponenten, die im
Komponenten mit eingerichtetem Cache:
3. So verwenden Sie Keep-Alive1. Requisiten 2. Verwendung mit <component></component><Vorlage> <div> <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" @click.prevent="comName = 'login'">Anmelden</a> <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" @click.prevent="comName = 'register'">Registrieren</a> <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" @click.prevent="comName = 'logOut'">Abmelden</a> // Die Login-Komponente wird zwischengespeichert. Wenn include nicht gesetzt ist, werden alle an <component></component> gemounteten Komponenten standardmäßig zwischengespeichert. // Mehrere angegebene Komponenten zwischenspeichern include = ['login', 'register'] <keep-alive include="Anmelden"> <Komponente: ist = "comName"></Komponente> </am Leben erhalten> </div> </Vorlage> 3. Verwendung mit <router-view />-Routing Das { Pfad: '/login', Name: 'Anmelden', Komponente: () => import('../views/login.vue') Meta:{ keepAlive : true // Login-Komponente wird zwischengespeichert} }, { Pfad: '/register', Name: 'register', Komponente: () => import('../views/register.vue'), Meta:{ keepAlive : false // Registerkomponente wird nicht zwischengespeichert} }, <Router-Ansicht />: <div id="app"> <am Leben erhalten> <!-- Komponenten anzeigen, die zwischengespeichert werden müssen--> <router-view v-if="$route.meta.keepAlive"> </router-view> </am Leben erhalten> <!-- Komponenten anzeigen, die kein Caching benötigen --> <router-view v-if="!$route.meta.keepAlive"> </router-view> </div> 4. Cache-Komponenten löschen// beforeRouteLeave() hook // Bestimmen, ob zur Detailseite gegangen werden soll beforeRouteLeave(to, from, next) { if (to.path === "/warendetail") { von.meta.keepAlive = wahr; } anders { von.meta.keepAlive = falsch; // dies.$destroy() } nächste(); } Dies ist das Ende dieses Artikels über Vue-Komponentenwechsel, dynamische Komponenten und Komponenten-Caching. Weitere relevante Inhalte zu Vue-Komponentenwechsel, dynamischen Komponenten und Komponenten-Caching finden Sie in früheren Artikeln auf 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:
|
<<: Einführung in MySQL-Rollenfunktionen
>>: So wählen und verwenden Sie PNG, JPG und GIF als Web-Bildformate
Domänenübergreifende Lösungen jsonp (get simulier...
Nachdem wir den transform Kurs abgeschlossen habe...
Baidu Cloud-Festplatte: Link: https://pan.baidu.c...
Problembeschreibung Wie wir alle wissen, wird bei...
1. Was ist eine Marge? Mit dem Rand wird die Abstä...
Durch JavaScript können wir das Springen von Hype...
Einfaches Beispiel für die Verschönerung von HTML...
Dieser Artikel stellt hauptsächlich die Implement...
Canvas ist ein neues Tag in HTML5. Sie können js ...
Inhaltsverzeichnis js tiefe Kopie Methode der Dat...
Im Vergleich zum alten Lebenszyklus Drei Hooks we...
Vorwort Aufgrund der unterschiedlichen Codiergewo...
Die MySQL-Installation ist in eine Installationsv...
In diesem Artikelbeispiel wird der spezifische JS...
Szenario: Die gecrawlten Daten erzeugen eine Date...