In diesem Artikel wird der spezifische Code der benutzerdefinierten Tabbar-Komponente des WeChat-Applets zu Ihrer Information bereitgestellt. Der spezifische Inhalt ist wie folgt Aufgrund der Projektanforderungen müssen Sie Ihre eigenen Komponenten schreiben: Schritt 1: Konfigurieren Sie die TabBar in App.json. Benutzerdefinierte Komponenten müssen ebenfalls konfiguriert werden, „custom“: true, konfigurieren Sie alle TabBar-Seiten in der Liste. "TabBar": { "benutzerdefiniert": wahr, "Farbe": "rot", "ausgewählteFarbe": "#3b81d7", "Hintergrundfarbe": "#000000", "Liste": [{ "pagePath": "Seiten/Rolle/InsureIndex/index", "Text": "Startseite" }, { "pagePath": "Seiten/Rolle/MineIndex/index", "Text": "Startseite" }, { "pagePath": "Seiten/Index/Benutzerinfo/Benutzerinfo", "Text": "Mein" }] }, Schritt 2: Erstellen Sie eine neue Komponente im selben Verzeichnis wie die Seiten, Ordnername: Custom-Tab-Bar, Dateiname der benutzerdefinierten Komponente: Index. Der Komponentencode ist wie folgt, Sie sollten in der Lage sein, ihn zu verstehen. index.js Komponente({ Eigenschaften: {}, Daten: { indexImg: "../static/images/tabBar/[email protected]", indexSelectImg: "../static/images/tabBar/[email protected]", aboutUsImg: "../static/images/tabBar/[email protected]", aboutUsSelectImg: "../static/images/tabBar/[email protected]", _tabbat: null, iPhoneX: falsch, URLs: ['/Seiten/Rolle/InsureIndex/index', „/Seiten/Index/Benutzerinfo/Benutzerinfo“ ] }, beigefügt() { var selbst = dies //Dies ist Geschäftscode, Sie müssen sich wx.getStorage({ nicht ansehen. Schlüssel: 'Benutzerinfo', Erfolg: Funktion (res) { Konstante { Benutzerrollencode } = res.daten wenn (Benutzerrollencode == '50' || Benutzerrollencode == '70') { selbst. setData({ ["urls[0]"]: '/Seiten/Rolle/MineIndex/index' }) } sonst wenn (userRoleCode == '30' || userRoleCode == '35' || userRoleCode == '40') { selbst. setData({ ["urls[0]"]: '/Seiten/Rolle/InsureIndex/index' }) } } }) wx.getSystemInfo({ Erfolg(res) { Konsole.log(res.model) wenn (res.model.indexOf('iPhone X') >= 0) { selbst. setData({ iPhoneX: stimmt }) } } }) }, /** * Liste der Komponentenmethoden */ Methoden: { switchTap: Funktion (e) { var selbst = dies var index = e.currentTarget.dataset.index; var urls = self.data.urls wx.switchTab({ URL: URLs[Index], }) } } }) index.wxml <div class="_tabbar {{iPhoneX?'_iPhoneX':''}}"> <div class="titem {{_tabbat==0?'tCdk':''}}" data-index="0" bind:tap="switchTap"> <image src="{{_tabbat==0?indexSelectImg:indexImg}}" /> <b>Startseite</b> </div> <div class="titem {{_tabbat==1?'tCdk':''}}" data-index="1" bind:tap="switchTap"> <image src="{{_tabbat==1?aboutUsSelectImg:aboutUsImg}}" /> <b>Mein</b> </div> </div> index.wxss ._tabbar { Breite: 100 %; Höhe: 120rpx; Anzeige: Flex; Elemente ausrichten: zentrieren; Hintergrund: #fff; Schriftgröße: 26rpx; Farbe: #999999; Kastenschatten: 0px -7rpx 13rpx 0px rgba (193, 185, 204, 0,13); } ._tabbar .titem { Textausrichtung: zentriert; Breite: 50%; } ._tabbar .titem Bild { Anzeige: Block; Rand: automatisch; Breite: 48rpx; Höhe: 48rpx; Rand unten: 10rpx; } ._tabbar .tCdk { Farbe: #37ADFE; } ._iPhoneX { Höhe: 148rpx; } index.json { "Komponente": wahr, "usingComponents": {} } Oben ist der Komponentencode. Wenn Sie auf die Registerkartenleiste klicken, um zur Seite zu springen, wird die Registerkartenleistenkomponente neu geladen, sodass der ausgewählte Stil immer der Standard ist. Daher müssen Sie in der JS-Datei der Seite, die die Registerkartenleiste verwendet, Folgendes tun: (Nehmen Sie als Beispiel die Seite „Home“) onShow: Funktion () { dies.getTabBar().setData({ _tabbat: 0 }) }, Das Obige ist vollständig, aber ich habe online gesehen, dass zwei TabBars angezeigt werden. Ich sehe sie hier nicht (eine benutzerdefinierte, eine integrierte). Wenn sie angezeigt werden, fügen Sie wx.hideTabBar() zur onLaunch-Funktion in app.js hinzu, um die integrierte TabBar auszublenden. 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:
|
<<: So erstellen Sie ein neues Image basierend auf einem vorhandenen Image in Docker
>>: Tutorial zur Installation und Konfiguration von MySQL für Mac
1. Fortsetzen nacos-Datenbank Datenbankname nacos...
Vor einigen Tagen habe ich festgestellt, dass mei...
Fehler-Screenshot Ich kann nicht finden, wo die A...
Vorwort Ich hatte kürzlich bei der Arbeit einige ...
Schlüsselpaar trennen Trennen Sie SSH-Schlüsselpa...
Installieren Sie die entpackte Version von Mysql ...
Erst Code, dann Text Code kopieren Der Code lautet...
Wir sollten besser aufpassen, denn die HTML-Poliz...
Lambda-Ausdrücke Lambda-Ausdrücke, auch Closures ...
Vorwort: Wenn wir Dezimalzahlen speichern müssen ...
Inhaltsverzeichnis Lokales Mixin Globale Mixins Z...
Dieser Artikel veranschaulicht anhand von Beispie...
Was ist ein Sticky-Footer-Layout? Unser übliches ...
Wir alle haben Dateien auf unseren Computern gesp...
【1】Tags <i></i> und <em></em...