Vue3-Projektkapselung Seitennavigation Textskeletteffektkomponente - globale Kapselung. Zu Ihrer Information sind die spezifischen Inhalte wie folgt ZweckBeim Anzeigen einer Seite müssen einige Daten aus dem Hintergrund geladen werden. Wenn das Netzwerk nicht gut ist, müssen Sie möglicherweise warten. In diesem Fall können Sie eine blinkende Skelett-Animation erstellen, um das Benutzererlebnis zu verbessern. Allgemeine Schritte - Es wird eine Komponente benötigt, die als Platzhalter dient. Diese Platzhalterkomponente hat einen Fachbegriff: Skeleton-Screen-Komponente. - Dies ist eine öffentliche Komponente, die global registriert werden muss. In Zukunft wird empfohlen, solche Komponenten im Vue-Plugin zu definieren. - Verwenden Sie Komponenten, um den Klassifizierungsskeletteffekt auf der linken Seite zu vervollständigen. Landecode1. Verpackungskomponenten<Vorlage> <div class="skelett" :style="{width,height}" :class="{shan:animated}"> <!-- 1 Schachtel --> <div Klasse="block" :style="{backgroundColor:bg}"></div> <!-- 2 Blitzeffekt-XTX-Skelett-Pseudoelemente---> </div> </Vorlage> <Skript> Standard exportieren { Name: 'Skelett', // Bei Verwendung müssen Sie Höhe, Breite und Hintergrundfarbe dynamisch festlegen und angeben, ob Requisiten blinken sollen: { bg: { Typ: Zeichenfolge, Standard: „#efefef“ }, Breite: { Typ: Zeichenfolge, Standard: „100px“ }, Höhe: Typ: Zeichenfolge, Standard: „100px“ }, animiert: Typ: Boolean, Standard: false } } } </Skript> <style scoped lang="weniger"> .skelett { Anzeige: Inline-Block; Position: relativ; Überlauf: versteckt; vertikale Ausrichtung: Mitte; .block { Breite: 100 %; Höhe: 100%; Rahmenradius: 2px; } } .shan &::nach { Inhalt: ""; Position: absolut; Animation: Shan 1,5 s Leichtigkeit 0 s unendlich; oben: 0; Breite: 50%; Höhe: 100%; Hintergrund: linearer Farbverlauf( nach links, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0,3) 50 %, rgba(255, 255, 255, 0) 100 % ); transformieren: skewX(-45 Grad); } } @keyframes shan { 0% { links: -100%; } 100 % { links: 120 %; } } </Stil> 2. Verpackungs-Plugin// Erweitern Sie die ursprünglichen Funktionen von Vue: globale Komponenten, benutzerdefinierte Anweisungen, Mounten von Prototypmethoden, Hinweis: Es gibt keinen globalen Filter. // Dies ist das Plugin // Vue2.0-Plugin schreibt Elemente: Exportiere ein Objekt, habe eine Installationsfunktion, übergebe standardmäßig den Vue-Konstruktor und erweitere auf der Grundlage von Vue // Vue3.0-Plugin schreibt Elemente: Exportiere ein Objekt, habe eine Installationsfunktion, übergebe standardmäßig die App-Anwendungsinstanz und erweitere auf der Grundlage der App. Importiere Skeleton aus „./skeleton.vue“. Standard exportieren { installieren (App) { // Erweitern Sie die App, die App bietet eine Komponentendirektivfunktion // Wenn Sie den Prototypen mit der Methode app.config.globalProperties mounten möchten, app.component(Skeleton.name, Skeleton) } } 3. Globale Registrierung in der Eintragsdatei main.jsimportiere { createApp } von 'vue' App aus „./App.vue“ importieren importiere MyUI aus „./components/library“ // Um das Plugin zu verwenden, verwenden Sie app.use(plugin) in main.js createApp(App).verwenden(store).verwenden(Router).verwenden(MyUI).mount('#app') 4. Komponenten in Projektkomponenten verwendenBei der Verwendung von Komponenten werden sich gegenseitig ausschließende v-if- und v-else-Befehle dort verwendet, wo der Skeletteffekt gewünscht wird. Beim Einkapseln einer Komponente werden die vier Parameter width, height, bg und animation intern über die benutzerdefinierten Eigenschaften props empfangen. Bei Verwendung der Komponente können Sie die entsprechenden Werte entsprechend den Szenenanforderungen übergeben. Der Code lautet wie folgt <span v-else> <Skelett Breite="60px" Höhe="18px" Stil="Rand rechts:5px" bg="rgba(255,255,255,0.2)" :animiert="true" /> <Skelett Breite="50px" Höhe="18px" bg="rgba(255,255,255,0.2)" :animiert="true" /> </span> Wirkung Zusammenfassen 1. Kapseln Sie Skelett-Bildschirm-Zellkomponenten 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 installieren Sie den Kibana-Tokenizer im Docker-Container
Das Prinzip des Hochladens von Bildern auf dem Fr...
Detaillierte Erklärung der MySQL-Replikationstabe...
1. Vorhandene Module anzeigen /usr/local/nginx/sb...
Inhaltsverzeichnis Was ist ein Einfügepuffer? Was...
CSS3Bitte Schauen Sie sich diese Website selbst a...
Vorbereitung: 1. Installieren Sie die VMware Work...
Es gibt ein Unternehmen, das die 5 zuletzt überpr...
In diesem Artikel wird hauptsächlich die SQL-Skri...
Netzwerk-Ports freigeben Tatsächlich gibt es in D...
Inhaltsverzeichnis Überblick Front-End-Wissenssys...
MySQL ist eine leistungsstarke Open-Source-Datenb...
Aggregatfunktionen Wirkt auf einen Datensatz ein ...
Inhaltsverzeichnis Manuelle Bereitstellung 1. Ers...
Vorwort Nginx ist ein auf Leistung ausgelegter HT...
Wie können wir beim Beenden eines laufenden Conta...