vue循环中点击选中再点击取消(单选)的实现

没有展开时

点击展开之后

<div class="flashread_item_box_time">

<span class="moment_time">9分钟前</span>

<div class="flashread_item_box_zan">

<span class="flashread_item_box_item"><i class="iconfont icon-changyongtubiao-mianxing-"></i>10</span>

<span class="flashread_item_box_item" @click="tocomment(index)"><i class="iconfont icon-pinglun" :class="{showcolor:currentTab==index}"></i>10</span>

</div>

</div>

<div class="comment_textareabox" :class="{'showcomment':currentTab==index}">

<div class="textarea_com">

<textarea placeholder="你来谈谈?" class="comment_textarea" v-on:input="change" v-model="comment"></textarea>

<button class="btn_comment" :class="{'showcolor':showcombtn}">发表</button>

</div>

</div>

data(){

return{

currentTab:-1,

flashreadlists:[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],

showcombtn:false,

comment:''

}

},

methods:{

change(){

if(this.comment.length>=1){

this.showcombtn=true

}else{

this.showcombtn=false

}

},

tocomment(index){

if(index!=this.currentTab){

this.currentTab = index;

}else{

this.currentTab = -1;

}

}

}

补充知识:vue 循环多个标签,点击标签变色,再点击取消,可以同时点击多个

效果如下:

1.

<div class="relFacilityTitcon">

<i v-for="(item,index) in facilityList" :key="index" @click="changeSpan(index);" :class="{'bgcolor':spanIndex.indexOf(index)>-1}" >{{item}}</i>

</div>

2.

.padding .relWarp .relFacility .relFacilityTitcon {

/* border: 1px solid red; */

/* line-height: 20px; */

padding: 0 .24rem;

font-size :10px;

}

.padding .relWarp .relFacility .relFacilityTitcon i {

/* height:20px; */

display: inline-block;

/* margin: 0 5px; */

height: 20px;

line-height: 20px;

padding: 0 .16rem;

/* width: auto; */

font-size: 10px;

color: #97979f;

border-radius: 5px;

border: 1px solid #97979f;

margin-right: 10px;

margin-top: 10px;

font-style: normal;

/* padding:1px 7px; */

/* display: inline-block; */

}

.padding .relWarp .relFacility .relFacilityTitcon .bgcolor {

border: 1px solid orange;

color: orange;

}

.padding .relWarp .relFacility .relFacilityTitcon i:last-child {

margin-right: 0;

}

3.

methods: {

changeSpan(index){

let arrIndex = this.spanIndex.indexOf(index);

// console.log(arrIndex);

if(arrIndex>-1){

this.spanIndex.splice(arrIndex,1);

}else{

this.spanIndex.push(index);

}

},

以上这篇vue循环中点击选中再点击取消(单选)的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

以上是 vue循环中点击选中再点击取消(单选)的实现 的全部内容, 来源链接: utcz.com/p/238070.html

回到顶部