Ich habe ein "Menü" mit Farben, und wenn der Benutzer auf eines der divs klicken, sollte es eine aktive Klasse hinzufügen, und entfernen Sie alle anderen aktiven Klassen von den anderen div ... Wie Ich mache das in VUE?VueJS hinzufügen entfernen Klasse bei Klick
<div class="choose-color__primary" style="width:400px">
<div class="light" v-on:click="selectColor($event)" :style="{'background-color': LightenDarkenColor(colors.primaryColor, 30)}"></div>
<div class="light" v-on:click="selectColor($event)" :style="{'background-color': LightenDarkenColor(colors.primaryColor, 15)}"></div>
<div class="light" v-on:click="selectColor($event)" :style="{'background-color': LightenDarkenColor(colors.primaryColor, 0)}"></div> <!-- This is the color the user has chosen from color wheel -->
<div class="dark" v-on:click="selectColor($event)" :style="{'background-color': LightenDarkenColor(colors.primaryColor, -15)}"></div>
<div class="dark" v-on:click="selectColor($event)" :style="{'background-color': LightenDarkenColor(colors.primaryColor, -30)}"></div>
</div>
Ich weiß, dass ich in meinem select() Funktion wie etwas tun könnte:
das DOM direkt das dieseevent.target.parentNode.classList.remove("active");
event.target.className = "active";
jedoch nur dachte, dass es in VUE einen besseren Weg als zu manipulieren?
Sie verwenden können: class vue Richtlinie. Vielleicht müssen Sie Code umgestalten. Show divs mit v-for from array: [{class: 'light | dark', aktiv: true | false: background: number}] –