Das Hinzufügen/Entfernen von Klassen zu Elementen ist ein sehr gängiges Verhalten in der Projektentwicklung. Beispielsweise fügt die Website-Navigation dem ausgewählten Element eine aktive Klasse hinzu, um zwischen ausgewählten und nicht ausgewählten Stilen zu unterscheiden. Neben der Navigation wird diese Methode auch an vielen anderen Stellen verwendet, um Auswahl und Abwahl zu handhaben. Zusätzlich zum Festlegen von Klassen legen wir in unseren Projekten häufig Inline-Stile von Elementen fest. In der jQuery-Ära verwendeten die meisten von uns addClass und removeClass in Kombination, um das Hinzufügen/Löschen von Klassen zu handhaben, und verwendeten die Methode css(), um den Inline-Stil von Elementen festzulegen/abzurufen. Wie gehen wir also mit dieser Art von Effekt in Vue um? In Vue können wir die Direktive v-bind verwenden, um unsere Klasse und unseren Stil zu binden. Als Nächstes sehen wir uns an, welche Methoden Vue zum Binden bereitstellt. ObjektsyntaxbindungsklasseDas Wechseln zwischen Registerkarten ist einer unserer häufigsten Effekte. Wie hebt man den ausgewählten Titel hervor? Die übliche Methode besteht darin, die Klasse dynamisch zu wechseln. <div id="app"> <div Klasse="Schaltflächengruppe"> <Schaltfläche v-for="(Tabulator, Index) in Tabulatoren" v-bind:Schlüssel="Index" v-bind:Klasse="{aktiv: aktuellerTab === Tab}" v-on:click="aktuellerTab = Tab" >{{tab}}</button> </div> <Komponente v-bind:is="currentTabComponent"></Komponente> </div> <Skript> Vue.component("tab1", { "Vorlage": "<p>Dies ist Registerkarte 1</p>" }); Vue.component("tab2", { "Vorlage": "<p>Dies ist Registerkarte 2</p>" }); Vue.component("tab3", { "Vorlage": "<p>Dies ist Registerkarte 3</p>" }); var vm = neuer Vue({ el: "#app", Daten: { currentTab: "tab1", Registerkarten: ["Registerkarte1", "Registerkarte2", "Registerkarte3"] }, berechnet: { aktuelleTabKomponente() { gib dies.currentTab zurück; } } }); </Skript>
<Schaltfläche Klasse="btn" v-bind:class="{'btn-primary': istPrimär, aktiv: istAktiv}" ></button> <Skript> var vm = neuer Vue({ el: "#app", Daten: { isPrimary: wahr, istAktiv: wahr } }); </Skript> Das Rendering-Ergebnis ist: <button class="btn btn-primary aktiv"></button> Wir können ein Datenobjekt auch direkt binden <button class="btn" v-bind:class="activePrimary"></button> <Skript> var vm = neuer Vue({ el: "#app", Daten: { aktivPrimär: { 'btn-primary': wahr, aktiv: wahr } } }); </Skript> Das Rendering-Ergebnis ist das gleiche wie oben <button class="btn btn-primary aktiv"></button>
<button v-bind:class="activeClass"></button> <Skript> var vm = neuer Vue({ el: "#app", Daten: { istAktiv: wahr }, berechnet: { aktiveKlasse() { zurückkehren { aktiv: this.isActive } } } }); </Skript> Array-Syntax-Bindungsklasse
<button class="btn" v-bind:class="[primary, aktiv]"></button> <Skript> var vm = neuer Vue({ el: "#app", Daten: { primär: 'btn-primary', aktiv: 'btn-aktiv' } }); </Skript>
//Ternärer Ausdruck <button v-bind:class="[isActive ? active : '', primary]"></button> <Skript> var vm = neuer Vue({ el: "#app", Daten: { istAktiv: wahr, primär: 'btn-primary', aktiv: 'btn-aktiv' } }); </Skript> //Verwenden der Objektsyntax in einem Array <button v-bind:class="[{active: isActive}, primary]"></button> <Skript> var vm = neuer Vue({ el: "#app", Daten: { istAktiv: wahr, primär: „btn-primär“ } }); </Skript> Objektsyntaxbindungsstil
<div v-bind:style="{color: colorStyle, backgroundColor: background}"> Objektsyntax <Skript> var vm = neuer Vue({ el: "#app", Daten: { Farbstil: "rot", Hintergrund: „blau“ } }); </Skript> Ähnlich wie Klassen können wir auch Datenobjekte zum Binden verwenden. <div v-bind:style="style">Objektsyntax</div> <Skript> var vm = neuer Vue({ el: "#app", Daten: { Stil: { Farbe: 'rot', Hintergrundfarbe: „blau“ } } }); </Skript> Array-Syntaxbindungsstil
<div v-bind:style="[style, fontStyle]">Objektsyntax</div> <Skript> var vm = neuer Vue({ el: "#app", Daten: { Stil: { Farbe: 'rot', Hintergrundfarbe: „blau“ }, Schriftstil: { Schriftgröße: '18px' } } }); </Skript> Damit ist dieser Artikel über verschiedene Möglichkeiten zur Verwendung von V-Bind-Binding mit Klasse und Stil in Vue abgeschlossen. Weitere Informationen zu Vue V-Bind-Binding finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Beispiel eines Befehls zur Linux-Hardwarekonfiguration
>>: Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.12
Inhaltsverzeichnis 1. Fügen Sie einen überwachend...
Hallo zusammen! Ich bin Mr. Tony, der nur über Te...
Ein allgemeiner Vorschlag besteht darin, Indizes ...
In diesem Artikel erfahren Sie, wie Sie mit Navic...
Inhaltsverzeichnis 1. Umweltvorbereitung 2. Daten...
Ich plane, meine eigene Website zu erstellen, als...
1. Spread-Operator Der Spread-Operator besteht au...
Vorwort Jeder, der JavaScript gelernt hat, muss s...
Baidu definiert zwei Arten von toten Linkformaten:...
Verständnis von Umfragen Tatsächlich liegt der Sc...
Dieser Artikel stellt Ihnen ein einfaches HTML-Ap...
Für die Bereitstellung von Hyper-V gelten die fol...
Die Riddle-Sicherheitslücke, die auf die MySQL-Ve...
Wenn Sie einen neuen Linux-Server bekommen, müsse...
Da die von nativen JS initiierten Netzwerkanforde...