vue迴圈中點選選中再點選取消(單選)的實現
阿新 • • 發佈:2020-09-11
沒有展開時
點選展開之後
<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迴圈中點選選中再點選取消(單選)的實現就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。