刚入门Vue没多久,在制作过程中遇到很多简单实用的小技巧。 没有太多的墨水,直接上代码: 一、先在data里增加一个变量,用来储存当前点击的元素 data() { return { activeClass: -1, // 0为默
刚入门Vue没多久,在制作过程中遇到很多简单实用的小技巧。
没有太多的墨水,直接上代码:
一、先在data里增加一个变量,用来储存当前点击的元素
data() { return { activeClass: -1, // 0为默认选择第一个,-1为不选择 }; },
二、在Template里面的代码,切记在@click方法里面要传index,
<li :class="activeClass == index ? 'active':''" v-for="(item,index) in itemList" :key="index" @click="getItem(index)"> {{itme.text}} </li>
三、点击事件:改变data里面activeClass的值
getItme(index) { this.activeClass = index; // 把当前点击元素的index,赋值给activeClass },
四、在style中写上 .active 样式
.active { /* background: #eee; */ color: #1e82d2; font-weight: bolder; }
补充知识:Vue实现非循环active点击切换样式
我就废话不多说了,大家还是直接看代码吧~
<div class="tab_basic"> <span :class="{to_active:shows==1}" @click="today_a">日</span> <span :class="{to_active:shows==2}" @click="today_b">月</span> <span :class="{to_active:shows==3}" @click="today_c">年</span> </div> <style> .to_active {background: #409eff!important;color: #fff;} </style> 然后在method里定义 today_a(){ this.shows = 1; }, today_b(){ this.shows = 2; }, today_c(){ this.shows = 3; },
完事,欢迎小伙伴有更好的方法分享哈~ 希望能给大家一个参考,也希望大家多多支持易盾网络。