Vue点击切换Class变化,如何实现Active当前样式操作

与此形成鲜明对比的是另一位巨星——葡萄牙队的c罗。上赛季他虽说有42个进球,但经统计,他的效率不到10%。在这个习惯统计学的社会,c罗的42球从深层分析充满了水分。此外,他的球场道德也属于低劣派,假摔贯穿全场,无处不在,江湖人送外号 "跳水运动员 ",桃色风波更是五花八门,而两者后果呢?看看吧:梅西凭借着08—09赛季带领巴萨取得西甲、国王杯、欧洲冠军联赛三冠王,取得433分,获得金球奖,而c罗只有他的一半不到!

刚入门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;
},

完事,欢迎小伙伴有更好的方法分享哈~ 希望能给大家一个参考,也希望大家多多支持。

您可能有感兴趣的文章
Vue路由参数的传递与获取方式详细介绍

vue学习记录之动态组件浅析

如何解决ElementUI组件中el-upload上传图片不显示问题

解读element el-upload上传的附件名称不显示 file-list赋值

一篇关于el-table-column的formatter的如何使用及说明