


Einführung in die Komponenten des JavaScript-Frameworks (xmlplus) (5) Tableiste
xmlplus ist ein JavaScriptFramework für die schnelle Entwicklung von Front-End- und Back-End-Projekten. In diesem Artikel wird hauptsächlich die Registerkarte der xmlplus-Komponentendesignreihe vorgestellt, die einen gewissen Referenzwert hat.
In diesem Kapitel wird eine Registerkartenkomponente entworfen, die häufig auf Geräten verwendet wird ist ein schematisches Diagramm:
Tab-Zusammensetzung
Vor der spezifischen Implementierung Stellen Sie sich vor, wie die Zielkomponente verwendet wird bei der Gestaltung eine große Hilfe sein. Durch Inspektion kann die Registerkartenkomponente in einen Containerteil und einen untergeordneten Teil unterteilt werden, wie in der folgenden XML-Struktur dargestellt.
<Tabbar id="tabbar"> <TabItem id="home" label="首页"/> <TabItem id="setting" label="设置"/> <TabItem id="logs" label="日志"/> <TabItem id="about" label="关于"/> </Tabbar>
Jetzt wechseln wir zum Unterelementteil der Tab-Komponente, um zu sehen, wie der Unterelementteil zerlegt wird. Aus dem Diagramm können Sie ersehen, dass der untergeordnete Abschnitt in einen untergeordneten Container und einen untergeordneten Abschnitt unterteilt werden kann, der ein Symbol und einen Text enthält.
<a id="tabitem"> <Icon id="icon"/> <span id="label">首页</span> </a>
Jetzt ist unser Ziel ganz klar: Wir entwerfen hauptsächlich drei Komponenten: die Symbolkomponente Icon, das Unterelement der Tab-Komponente TabItem und den Container der Tab-Komponente Tabbar.
Strukturdiagramm
Da diese Komponente relativ einfach ist, können die drei Unterkomponenten auf der gleichen Ebene platziert werden. Bitte beachten Sie jedoch, dass wir auch vier Symbolkomponenten haben und ein Kind erstellen können, um sie zu halten. Unser Komponentenstrukturdiagramm ist unten dargestellt:
Tabbar/
├── Tabbar
├── TabItem
└── Icon/
├─ ─ Über
├── Startseite
├── Protokolle
└── Einstellung
Icon-Implementierung
Beginnen wir mit der einfachsten und betrachten wir die vier Symbolkomponenten. Die Symbolkomponente wird hauptsächlich durch Einkapseln von SVG-Text implementiert. Da der Symboltext lang ist, wird hier nur ein Abschnitt jedes Symboltexts abgefangen.
About: { xml: `<svg width="48" height="48" viewBox="0 0 1024 1024"> <path d="M507.577907 23.272727C240.142852..."/> </svg>` }, Home: { xml: `<svg width="48" height="48" viewBox="0 0 1024 1024"> <path d="M949.082218 519.343245 508.704442..."/> </svg>` }, Logs: { xml: `<svg width="48" height="48" viewBox="0 0 1024 1024"> <path d="M576 125.344l32 0 0 64-32 0 0-64Z..."/> </svg>` }, Setting: { xml: `<svg width="48" height="48" viewBox="0 0 1024 1024"> <path d="M512 336.664c-96.68 0-175.336 78...."/> </svg>` }
Bitte beachten Sie, dass sich diese Symbole unter dem virtuellen Verzeichnis/Symbol befinden, d. h. Sie müssen sie wie folgt importieren:
xmlplus("ui", function (xp, $_, t) { $_().imports({Tabbar: {... }, TabItem: {...}}); $_("icon").imports({--这里包含了四个图标组件--}); });
Im Folgenden wird das Symbol implementiert Komponentensymbol, das Symbol hier Die Komponente unterscheidet sich von der oben genannten Komponente und instanziiert je nach Eingabesymboltyp unterschiedliche Symbole. Dieses Design kann einen Teil desselben Codes wiederverwenden und Redundanz vermeiden.
Icon: { css: "#icon { width: 1.5em; height: 1.5em; display: inline-block; }", opt: { icon: "about" }, xml: `<span id="icon"/>`, fun: function (sys, items, opts) { sys.icon.replace("icon/" + opts.icon).addClass("#icon"); } }
Das Element Funktion dieser Komponente erstellt eine Symbolkomponente basierend auf dem Eingabesymboltyp und ersetzt das vorhandene Span-Element Objekt . Beachten Sie, dass Sie den Stil nach dem Ersetzen erneut hinzufügen müssen.
Implementierung von Unterpunkten
Nach dem Prinzip von innen nach außen implementieren Sie als nächstes den Unterpunkt TabItem der Tab-Komponente. Für diese Komponente müssen Sie eine synonyme -Attribut--Zuordnung im Zuordnungselement der Komponente durchführen und den ID-Attributwert dem Symbolattribut der internen Symbolkomponente zuordnen.
TabItem: { css: "这里是样式项部分,为便于组件整体展示,略去...", map: {"attrs": { icon: "id->icon" } }, xml: `<a id="tabitem"> <Icon id="icon"/> <span id="label">首页</span> </a>`, fun: function (sys, items, opts) { sys.label.text(opts.label); function select() { sys.tabitem.addClass("#primary"); } function unselect() { sys.tabitem.removeClass("#primary"); } return { select: select, unselect: unselect }; } }
Diese Komponente bietet eine Schnittstelle zum Wechseln zwischen ausgewählten und nicht ausgewählten Zuständen beim Wechseln von Optionen. Zur Verwendung mit Tab-Containern.
Tab-Implementierung
Schließlich schauen wir uns die Implementierung der Tab-Komponente Tabbar an. Diese Komponente lauscht auf das -Ereignis , wenn der Benutzer auf die Registerkarte tippt. Sie führt im Listener hauptsächlich zwei Dinge aus: Die eine besteht darin, den Wechsel des Registerkartenstatus aufrechtzuerhalten; Zustandsänderungsereignis.
Tabbar: { css: "这里是样式项部分,为便于组件整体展示,略去...", xml: `<nav id="tabbar"/>`, fun: function (sys, items, opts) { var sel = this.first(); this.on("touchend", "./*[@id]", function (e) { sel.value().unselect(); (sel = this).value().select(); this.trigger("switch", this.toString()); }); if (sel) sel.value().select(); } }
An diesem Punkt ist eine Tab-Komponente fertig. Schauen wir uns eine bestimmte Anwendung an:
xmlplus("example", function (xp, $_, t) { $_().imports({ Index: { xml: `<Footer id='footer'/>`, fun: function (sys, items, opts) { this.on("switch", (e, target) => console.log(target)); } }, Footer: { xml: `<Tabbar id="footer"> <TabItem id="home" label="首页"/> <TabItem id="setting" label="设置"/> <TabItem id="logs" label="日志"/> <TabItem id="about" label="关于"/> </Tabbar>` } }); });
Im Komponentenindex können Sie auf Nachrichten von der Registerkarte warten Schalten Sie Ereignisse um, um entsprechende Vorgänge auszuführen. Verwenden Sie beispielsweise die Stack-Komponente View, die wir später vorstellen werden, um Wechselvorgänge zwischen Seiten durchzuführen.
Diese Artikelserie basiert auf dem xmlplus-Framework. Wenn Sie nicht viel über xmlplus wissen, können Sie www.xmlplus.cn besuchen. Eine ausführliche Dokumentation zu den ersten Schritten finden Sie hier.
[Verwandte Empfehlungen]
1. Kostenloses JS-Online-Video-Tutorial
2.JavaScript Chinese Reference Manual
3. php.cn Dugu Jiujian (3) – JavaScript-Video-Tutorial
Das obige ist der detaillierte Inhalt vonEinführung in die Komponenten des JavaScript-Frameworks (xmlplus) (5) Tableiste. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Mehrere Windows-Benutzer haben sich darüber beschwert, dass sie beim Versuch, auf bestimmte Websites im Google Chrome-Browser auf ihren Systemen zuzugreifen, nicht auf die Webseiten zugreifen können. Außerdem wird im Browser die Meldung „Die Website kann nicht erreicht werden“ mit dem Fehlercode ERR_ADDRESS_UNREACHABLE angezeigt. Es kann viele mögliche Gründe für dieses Problem geben: Probleme mit dem Website-Server, Proxy-Server-Einstellungen, instabile Internetverbindung usw. Wenn Sie auf ähnliche Probleme stoßen, geraten Sie nicht in Panik. Nachdem wir das Problem in diesem Artikel eingehend analysiert haben, haben wir eine Reihe von Lösungen gefunden. Bevor Sie fortfahren, versuchen Sie die folgenden Problemumgehungen: Überprüfen Sie, ob der Benutzer versucht, von anderen Geräten aus auf die Website zuzugreifen, und es keine Probleme gibt, dann dies

Logitech GHub ist eine Software, mit der Benutzer ihre Logitech-Peripheriegeräte verwalten können. Diese Software ist mit Windows 11 kompatibel. Einige Benutzer berichteten jedoch, dass Logitech GHub unter Windows 11 bei ihnen nicht funktioniert. Unsere Leser haben berichtet, dass beim Versuch, die Software zu starten, der Ladevorgang hängen bleibt. Daher können sie die Software nicht verwenden, wenn sie nicht für sie geöffnet wird. Haben Sie auch versucht, das Problem zu beheben, dass LogitechGHub unter Windows 11 nicht funktioniert? Wenn ja, können die folgenden möglichen Lösungen LogitechGHub starten. Was ist der Grund, warum Logitech GHub unter Windows 11 nicht funktioniert? mit vielen anderen

Eine der Funktionen des Windows-Datei-Explorers ist das Vorschaufenster, das eine Vorschau der von Ihnen ausgewählten Datei anzeigt. Dies bedeutet, dass Sie den Inhalt der Datei anzeigen können, bevor Sie sie öffnen. Der Vorschaubereich des Datei-Explorers bietet Vorschauen für verschiedene Dateitypen wie Office-bezogene Dokumente, PDFs, Textdateien, Bilder und Videos. Normalerweise funktioniert es einwandfrei, aber manchmal ist die Dateivorschau nicht verfügbar. In letzter Zeit haben viele Benutzer von Windows 11 das Problem angesprochen, dass das Vorschaufenster des Datei-Explorers nicht funktioniert und sie keine Dateivorschauen anzeigen können. Haben Sie das Problem, dass das Vorschaufenster auf Ihrem Windows-Computer nicht funktioniert? Dann lesen Sie diesen Artikel weiter. Hier haben wir eine Liste mit Korrekturen zusammengestellt, die Ihnen bei der Behebung helfen können

MSIAfterburner ist ein Übertaktungstool, das für die meisten Grafikkarten geeignet ist. Darüber hinaus können Sie damit auch die Leistung Ihres Systems überwachen. Einige Benutzer berichteten jedoch, dass MSIAfterburner unter Windows 11 nicht funktioniert. Dies kann mehrere Gründe haben, die wir in den folgenden Abschnitten besprechen. Wenn dies jedoch geschieht, können Sie die Leistung nicht ändern oder während des Spiels überwachen. Wie erwartet stellt dies eine erhebliche Herausforderung für Gamer dar. Aus diesem Grund haben wir dieses Tutorial gewidmet, um Ihnen zu helfen, das Problem zu verstehen und Sie durch die effektivsten Lösungen für das Problem zu führen, dass MSIAfterburned unter Windows 11 nicht funktioniert.

Das Betriebssystem sieht viel besser aus als sein Vorgänger und verfügt über spielerorientierte Funktionen wie AutoHDR und DirectStorage, allerdings hatten Valorant-Spieler einige Probleme beim Starten des Spiels. Dies ist nicht das erste Problem, mit dem Gamer zuvor konfrontiert waren. Valorant lässt sich unter Windows 11 nicht öffnen. Dies ist ein weiteres Problem, das sie plagt, aber wir haben die Möglichkeiten zur Behebung beschrieben. Nun scheint es, dass Valorant-Spieler, die auf Windows 11 umgestiegen sind, aufgrund von Secure Boot und TPM2.0-Diensten mit Problemen konfrontiert sind, die dazu führen, dass im Spielmenü während der Ausführung nur eine Exit-Option angezeigt wird. Viele Benutzer erhalten den Fehler VAN1067, aber das sollte kein Grund zur Beunruhigung sein

Die neueste Version des Opera-Browsers enthält eine neue automatische Video-Popup-Funktion. Wenn Sie diese Funktion verwenden, werden Sie feststellen, dass das Video automatisch angezeigt wird, wenn Sie zu einem anderen Tab in Ihrem Browser navigieren. Es wurde festgestellt, dass dieses Popup-Video in der Größe geändert und auf dem Bildschirm verschoben werden kann. Wenn Sie zurück zur Registerkarte „Videos“ navigieren, wird diese fortgesetzt und das schwebende Fenster verschwindet. Die Video-Popup-Funktion ist nützlich für Multitasking-Benutzer, die während der Arbeit gerne Videos ansehen. Allerdings wird nicht jedem Opera-Benutzer diese automatische Video-Popup-Funktion gefallen. Wenn Sie zu den Nutzern des Opera-Browsers gehören, die sich darüber ärgern, dass bei jedem Tab-Wechsel Videos auftauchen, dann haben Sie den richtigen Beitrag gefunden. Hier erfahren Sie, wie Sie dieses Popup in Opera deaktivieren

Fast jedes High-End-Spiel, das wir spielen, verlässt sich auf DirectX, um effizient zu laufen. Einige Benutzer berichteten jedoch, dass sie auf die DirectX-Funktion GetDeviceRemovedReasonfailedwith gefolgt von der Fehlerursache gestoßen seien. Die oben genannten Gründe sind für den Durchschnittsbenutzer nicht offensichtlich und erfordern ein gewisses Maß an Recherche, um die Grundursache und die effektivste Lösung zu ermitteln. Zur Vereinfachung haben wir diesem Problem dieses Tutorial gewidmet. In den folgenden Abschnitten helfen wir Ihnen, die möglichen Ursachen zu identifizieren und führen Sie durch die Schritte zur Fehlerbehebung, um die DirectX-Funktion GetDeviceRemovedReasonfailedwitherror zu beseitigen. welche Ursachen

Dieser Vorgang erfordert eine interaktive Fensterstation, was ein ziemlich seltsamer Fehler ist. Softwarefenster, die Benutzern die Interaktion mit der App ermöglichen, sind nicht geöffnet. Sie müssen sie aktivieren. Dieser Fehler wurde mit der 2021 Printing Nightmare-Schwachstelle in Verbindung gebracht. Es besteht jedoch bis heute weiterhin und wirkt sich auf Ihren Computer und Ihre Gerätetreiber aus. Glücklicherweise ist es leicht zu beheben. Warum tritt dieser Fehler überhaupt auf? Bevor Sie beschreiben, wie Sie diesen Fehler beheben können, müssen Sie unbedingt die Ursachen dieses Fehlers auflisten. Auf diese Weise können Sie die notwendigen Schritte unternehmen, um sicherzustellen, dass so etwas nicht noch einmal passiert. Beschädigte Dateien bringen Ihre Computerdateien durcheinander – Beschädigungen können verschiedene Ursachen haben, von Malware bis hin zu Stromausfällen. Es wird empfohlen, einen SFC-Scan durchzuführen. Sie haben eine übereifrige Antiviren-App – Antivirensoftware blockiert manchmal
