I am trying to remove active class from all Li has same class but could not get right code to do that in vuejs 2.x.
my code example is here : jsfiddle
var app = new Vue({
el:"#app",
data:{
active_el:0
},
methods:{
activate:function(el){
if(el === 0) {
// remove active class from all Ul>>Li
}else {
this.active_el = el;
}
}
}
});
ul > li:hover {
cursor:pointer;
}
.active {
color:red;
font-weight:bold;
}
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script>
<div id="app">
<a href="#" @click.native="activate(0)" :class="{ active : active_el == 0 }">link 0</a>
<ul>
<li @click="activate(1)" :class="{ active : active_el == 1 }">Link 1</li>
<li @click="activate(2)" :class="{ active : active_el == 2 }">Link 2</li>
<li @click="activate(3)" :class="{ active : active_el == 3 }">Link 3</li>
</ul>
<ul>
<li @click="activate(4)" :class="{ active : active_el == 4 }">Link 1</li>
<li @click="activate(5)" :class="{ active : active_el == 5 }">Link 2</li>
<li @click="activate(6)" :class="{ active : active_el == 6 }">Link 3</li>
</ul>
</div>
active class should be removed from all li under Ul tag when link0 is clicked.