簡體   English   中英

如何根據 id 在 vuejs 2 中添加或刪除類

[英]how to add or remove class in vuejs 2 based on id

我想使用 vuejs 基於 id 向元素添加或刪除類,但此代碼將行為應用於所有元素。 如何通過 id 向元素添加/刪除類? 提前謝謝大家。

 new Vue({ el:"#test", data: { msg: 'msg goes here', isActive: false }, methods: { log: function(e) { this.isActive = ! this.isActive //alert(e.currentTarget.id); } } });
 .active { background: red }
 <script src="https://cdn.jsdelivr.net/npm/vue@2.5.13/dist/vue.js"></script> <div id="test"> <div id="1" v-on:click="log($event)" v-bind:class="{ active: isActive }"> {{ msg }} </div> <div id="2" v-on:click="log($event)" v-bind:class="{ active: isActive }"> {{ msg }} </div> </div>

這是使用組件來實現您正在尋找的行為的示例:

 // register const clickable = Vue.component('clickable', { props: ['msg'], data: function() { return { isActive: false } }, template: '<div :class="{ active: isActive }" @click="isActive = !isActive">{{ msg }}</div>' }) new Vue({ el: "#test", components: { clickable }, data: function() { return { msg: 'msg goes here', isActive: false } } });
 .active { background: red }
 <script src="https://cdn.jsdelivr.net/npm/vue@2.5.13/dist/vue.js"></script> <div id="test"> <clickable :msg='msg'></clickable> <clickable :msg='msg'></clickable> </div>

你還沒有內化基本的 vuejs 概念。

https://v2.vuejs.org/v2/guide/components.html

您的兩個元素都應該是單獨的組件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM