Bindungsklasse Methode 1: Objektsyntax: Übergeben Sie ein Objekt an v-bind:class, um Klassen dynamisch zu wechseln .Kasten { Breite: 100px; Höhe: 100px; Hintergrundfarbe: grau; } .Kreis { Randradius: 50 %; } <div id="app"> <div class="box" @click="isCircle = !isCircle" :class="{circle:isCircle}"></div> <!--Wenn isCircle wahr ist, wird dem Klassennamen des Div ein Kreis hinzugefügt--> <p>{{isCircle}}</p> </div> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <Skript> neuer Vue({ el:"#app", Daten:{ isCircle: false } }) </Skript> Anfangs ist das Kästchen quadratisch. Wenn Sie darauf klicken, wird es zu einem Kreis. Klicken Sie erneut, um es zu einem Quadrat zu machen, und so weiter. :class="{circle:isCircle}" kann auch in die berechnete Eigenschaft computed geschrieben werden und gibt dieses Objekt zurück <div class="box" @click="isCircle = !isCircle" :class="divChange"></div> berechnet:{ divÄndern:Funktion(){ zurück {circle:this.isCircle} } } Methode 2: .Blau { Hintergrundfarbe: blau; } <div id="app"> <div Klasse="box" v-on:click="clickFun()" :class="[Farbe,divChange()]"></div> <p>{{isCircle}}</p> </div> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <Skript> neuer Vue({ el:"#app", Daten:{ isCircle: falsch, Farbe:"" }, Methoden:{ divChange: Funktion(){ zurück {circle:this.isCircle} }, KlickFun: Funktion(){ dies.istKreis = !dies.istKreis; wenn (dies.istKreis){ diese.Farbe = "blau" }anders{ diese.farbe = "" } } } }) </Skript> Inline-Stile binden Bindende Inline-Stile können auch Objektsyntax oder Arraysyntax verwenden. Hier ist ein Beispiel für eine Methode, die Objektsyntax und berechnete Eigenschaften kombiniert: <div id="app"> <!--Inline-Stile binden--> <div Klasse="box" v-on:click="clickFun()" :style="divStyle"></div> <p>{{isCircle}}</p> </div> divStil: divStyle: Funktion(){ zurückkehren { Hintergrundfarbe:diese.Farbe } } Auf diese Weise können Sie die gewünschte Farbe auf .box einstellen Kleine Demo: 1. Beim Klicken auf das Feld zwischen Kreis und Quadrat wechseln - Inline-Stilbindung .Kasten { Breite: 100px; Höhe: 100px; Hintergrundfarbe: rot; } .Blau { Hintergrundfarbe: blau; } <div id="app"> <div Klasse="box" :style="borderRadius" @click="changeStyle" :class="{blue: isBlue}"></div> <button @click="startClick">Starten</button> </div> neuer Vue({ el: "#app", Daten: { isCircle: falsch, borderRadius: { borderRadius: "50%" }, isStart: false, isBlue: falsch, Timer: null }, Methoden: { changeStyle: Funktion () { wenn (this.borderRadius.borderRadius == "0%") { this.borderRadius.borderRadius = "50 %" } anders { this.borderRadius.borderRadius = "0 %" } }, startClick: Funktion () { dies.istStart = !dies.istStart; } }, betrachten: isStart: Funktion (Wert) { var vm = dies; wenn (Wert) { console.log("Farbwechsel aktivieren") dieser.Timer = setzeIntervall(Funktion () { vm.isBlue = !vm.isBlue }, 1000) }anders{ console.log("Timer abbrechen, Farbwechsel stoppen") : ClearInterval(dieser.Timer); dieser.timer = null; } } } }) Wirkung: Dies ist das Ende dieses Artikels über die Implementierung der Vue-Bindungsklasse und des Bindungs-Inline-Stils. Weitere relevante Inhalte zur Vue-Bindungsklasse und zum Bindungs-Inline-Stil finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Beispielcode zur Implementierung eines gepunkteten Rahmen-Scrolleffekts mit CSS
>>: Lösung für das Problem, dass Docker Containerdienste nicht stoppen oder löschen kann
Vorwort Dieses Experiment bereitet zwei virtuelle...
In diesem Artikel erfahren Sie, wie Sie mit Vue e...
In diesem Artikelbeispiel wird der spezifische Co...
Zusammenfassend: 1. Berücksichtigen Sie die Leist...
1. Was ist ein zweispaltiges Layout? Es gibt zwei...
Ich weiß nicht, ob Ihnen beim Erstellen einer Webs...
Inhaltsverzeichnis 1 Indikatoren im Stresstest 1,...
Inhaltsverzeichnis 1. Erstellen Sie eine SQL-Skri...
SVG wurde in den letzten Jahren aufgrund seiner v...
Inhaltsverzeichnis Kurze Umfrage Langfristige Abf...
Inhaltsverzeichnis Erstellen Sie eine Vuex-Umgebu...
Im aktuellen Projekt müssen wir einen Effekt zum ...
Am Anfang war ich traurig. Die Screenshots sind w...
Inhaltsverzeichnis Vorwort 1. Einführung in einma...
brauchen: Identische Elemente eines Feldes zusamm...