Vorwort: Die vollständige Kapselung eines Funktionsmoduls mithilfe komponentenbasierter Ideen, wie z. B. einer Navigationsleiste, bietet viele Vorteile sowohl für unsere Entwicklungsideen als auch für die Effizienz. Bei der Entwicklung sollten wir versuchen, so weit wie möglich komponentenbasierte Entwicklungsideen zu verwenden und nicht den gesamten Code in dieselbe VUE-Datei zu schreiben, was die Lesbarkeit des Codes erheblich verbessern kann. Kapselung der Navigationsleiste Die Hauptidee besteht darin, die roten Teile als Komponenten zu behandeln, die sich nur in Bild und Text unterscheiden. Daher können wir sie in dieselbe Komponente kapseln und dann die Bild- und Textinformationen an die Komponente übergeben (Slots können verwendet werden). //TabBarItem.vue <Vorlage> <div Klasse="tabBarItem" @click="tabBarItemClick"> <div v-if="!istAktiv"> <slot name="item-icon"></slot> </div> <div v-sonst> <slot name="item-icon-active"></slot> </div> <div :style="istAktiveFarbe"> <slot name="item-text"></slot> </div> </div> </Vorlage> <Skript> Standard exportieren { Name:"TabBarItem", Requisiten:{ Pfad:String, aktiveFarbe:{ Typ: Zeichenfolge, Standard: „rosa“ } }, berechnet:{ istAktiv:{ erhalten(){ gib dies zurück.$route.path.indexOf(this.path)!==-1; }, Satz(){} }, istActiveColor(){ gib dies zurück.istAktiv?{color:this.activeColor}:{} } }, Methoden:{ tabBarItemClick(){ dies.$router.push(dieser.pfad); } } } </Skript> <Stilbereich> .tabBarItem{ biegen: 1; Schriftgröße: 12px; } .tabBarItem img{ Rand oben: 3px; Breite: 24px; Polsterung unten: 3px; } </Stil> Der nächste Schritt besteht darin, einen Container zu kapseln, der diese vier Optionen an derselben Stelle platziert. //TabBar.vue <Vorlage> <div Klasse="tabBar"> <Steckplatz></Steckplatz> </div> </Vorlage> <Skript> Standard exportieren { Name: „TabBar“ } </Skript> <Stilbereich> .tabBar{ Anzeige: Flex; Höhe: 49px; Position: fest; links: 0; rechts: 0; unten: 0; Textausrichtung: zentriert; Kastenschatten: 0px -1px 1px rgba(100, 100, 100, .1); Hintergrundfarbe: #f6f6f6; } </Stil> Der nächste Schritt besteht darin, es zu verwenden und unterschiedliche Bilder und Textinformationen in jeden unterschiedlichen TabBarItem-Slot zu schreiben. //MainTabBar.vue <Vorlage> <div Klasse="Haupt-TabBar"> <Tabulatorleiste> <tab-bar-item Pfad="/home" activeColor="#ff8198"> <img src="~assets/img/tabbar/home.svg" alt="" slot="item-icon"> <img src="~assets/img/tabbar/home_active.svg" alt="" slot="item-icon-active"> <div slot="item-text">Startseite</div> </tab-bar-item> <tab-bar-item path="/Kategorie" activeColor="#ff8198"> <img src="~assets/img/tabbar/category.svg" alt="" slot="item-icon"> <img src="~assets/img/tabbar/category_active.svg" alt="" slot="item-icon-active"> <div slot="item-text">Kategorie</div> </tab-bar-item> <tab-bar-item path="/cart" activeColor="#ff8198"> <img src="~assets/img/tabbar/shopcart.svg" alt="" slot="item-icon"> <img src="~assets/img/tabbar/shopcart_active.svg" alt="" slot="item-icon-active"> <div slot="item-text">Warenkorb</div> </tab-bar-item> <tab-bar-item path="/profil" activeColor="#ff8198"> <img src="~assets/img/tabbar/profile.svg" alt="" slot="item-icon"> <img src="~assets/img/tabbar/profile_active.svg" alt="" slot="item-icon-active"> <div slot="item-text">Mein</div> </tab-bar-item> </tab-bar> </div> </Vorlage> <Skript> TabBar aus „Komponenten/Allgemein/Tabbar/TabBar“ importieren importiere TabBarItem aus „Komponenten/Inhalt/Tabbar/TabBarItem“ Standard exportieren { Name:"Haupt-Tableiste", Komponenten: { TabBar, TabBarItem } } </Skript> <Stil> </Stil> Die Navigationsleiste wird im Allgemeinen auf der Startseite verwendet, daher haben wir diese Navigationsleiste in App.vue eingefügt. <Vorlage> <div id="app"> <Haupt-Tab-Leiste></Haupt-Tab-Leiste> </div> </Vorlage> <Skript> importiere MainTabBar aus „Komponenten/Inhalt/Tabbar/MainTabBar“; Standard exportieren { Name: "App", Komponenten: { Haupt-Tab-Leiste } } Zusammenfassung: Es scheint, dass wir 3 Dateien verwenden, um eine Navigationsleiste zu schreiben, was zwar mühsam erscheinen mag, aber auch die Lesbarkeit des Codes erheblich verbessert. Wenn wir die Navigationsleiste noch an anderer Stelle im Projekt verwenden müssen, müssen wir nur eine Datei ähnlich wie MainTabBar erstellen und dann die gewünschten Bilder und Texte hineinschreiben. Auch wenn sie in anderen Projekten verwendet wird, können wir die Datei direkt kopieren und direkt verwenden. Wir müssen nicht einmal CSS-Stile schreiben, was unsere Entwicklungseffizienz erheblich verbessert. 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:
|
>>: Strategie zur Optimierung der Leistung von MySQL-Datenbankabfragen
Inhaltsverzeichnis 1. Hintergrund 2. Bedienungssc...
Inhaltsverzeichnis 1 Master-Slave-Lese-/Schreibtr...
Inhaltsverzeichnis 1. Übersicht 2. Parameter zum ...
Inhaltsverzeichnis Ereignisbindung von Klassenkom...
1. Um die Abfrage zu optimieren, sollten Sie voll...
1. Ursache Die Anforderung besteht darin, zwei Ze...
Inhaltsverzeichnis K8S Master Grundlegende Archit...
Inhaltsverzeichnis Vorwort Schritt Vorwort Heute ...
Das in diesem Artikel beschriebene gleichbreite L...
Die Frontend-Entwicklungsabteilung wächst, die Mi...
In vielen Projekten ist es notwendig, die Funktio...
Verwenden Sie reines CSS, um die Hintergrundfarbe...
1. Voraussetzungen Bei der Entwicklung von Front-...
Das mit CLI3 erstellte Vue-Projekt wird als Nullk...
Dieser Artikel stellt hauptsächlich vor, wie pagi...