注:以下三个例子,均以切换active为例
一、切换
toggleClass
<div class="btn" :class="{'active':isChoose}" @click="togglePay"></div>
data(){
return {
isChoose : false
}
},
methods:{
togglePay:function(){
this.isChoose = !this.isChoose
}
}
效果如下图:
二、单选
div class="btn" :class="{'active':isChoose==index}" @click="isChoose=index"></div>
data(){
return {
isChoose : null
}
},
效果如下图:
三、多选
<template>
<ul>
<li v-for="(item,index) in cartList"
:class="{'active':item.active}"
@click="togglePay(item,index)">
</li>
</ul>
</template>
<script >
export default{
methods:{
togglePay(item,index){
if(item.active){
//为item添加不存在的属性,需要使用vue提供的
//Vue.set( object, key, value )方法。
this.$set(item,'active',false);
}else{
this.$set(item,'active',true);
}
}}
}
}
</script>