首页 > 其他分享 >动态给v-for循环的数组绑定class

动态给v-for循环的数组绑定class

时间:2022-11-09 11:24:55浏览次数:45  
标签:title 绑定 class reactive 数组 ref id

效果图:

 

思路:通过 :class来和三元运算符来动态绑定

   给v-for绑定一个单击事件,这个单击事件里传输下标索引,用于获取用户点击的是哪一个

   定义一个n来存储传过来的下标值

   最后在:class中判断n是否==与下标索引

代码:

<template>
   <div :class="[className ==i ? 'active' : '']" 
       v-for="(t, i) in titles" :key="t.id"
           @click="classFunction(i)">
                {{ t.title }}
   </div>
</template>

<script lang="ts" setup>
import { reactive, ref } from 'vue';
let className=ref(0);
let titles = reactive([
    { id: 1, title: "默认" }, { id: 2, title: "销量" },
    { id: 3, title: "价格" }, { id: 4, title: "好评" },
    { id: 5, title: "出版时间" }
])
function classFunction(i:any){
    className.value=i
}
</script>

<style scoped>

</style>

 

标签:title,绑定,class,reactive,数组,ref,id
From: https://www.cnblogs.com/zsbb/p/16872921.html

相关文章

  • 一个数组中的元素在另一个数组中存在,就移除
    提供两种解决办法方案一//两个数组,一个数组a中的元素在另一个数组b中存在,就把A中的这个元素移除,得到新的数组publicstaticString[]getNewArrByTwoArr(String[]......
  • Vue 数组中出现__ob__: Observer无法取值
    问题说明在开发项目中经常要从数据库中拿到数组然后复制给新的数组使用,但是会发现有时候会发现带有 __ob__:Observer 数组后缀的就是没有办法取到值,更可怕的是 consol......
  • python get请求传array数组
    前言使用传统的http发get请求时,如果传参为array数组,参数名称为a时,可以这样传值a=1&a=2&a=3,但是当只有一个时,这种方式就不合理了。get请求还有另外一种方式传array数组,在......
  • 将数组数据转化成树形结构 tranListToTreeData
    exportfunctiontranListToTreeData(list,rootValue){//list是最完整的数组letarr=[];//记录儿子list.forEach((item)=>{//记录是否有儿子......
  • 实验四 类与数组、指针
    任务五代码:vectorInt:#pragmaonce#include<iostream>#include<cassert>usingnamespacestd;classVectorInt{public:VectorInt(ints);......
  • 输入一组数据(n个,n从键盘输入n<=100),计算平均值(保留两位小数) 要求将数据存入数组中实现
    输入:数一个整数n第二行开始,再输入n个整数输出:最大值平均值(保留两位小数)#include<stdio.h>main(){inta[100],n,i,max=0,sum=0;floatave;scanf(......
  • 用户数组缩减
    importjava.util.Scanner;publicclassEext{ publicstaticvoidmain(String[]args){ Scannermyscanner=newScanner(System.in); //缩减 int[]arr={1,2,......
  • 获取数组中逆序对的对数
    packageclass04;importjava.util.Arrays;/***获取数组中逆序对的对数*<p>*在一个数组中,*任何一个前面的数a,和任何一个后面的数b,*如果(a,b)是降序的,......
  • 数组扩容
    importjava.util.Scanner;publicclassEext{ publicstaticvoidmain(String[]args){ //数组扩容 int[]arr={1,2,3}; int[]arr2=newint[arr.length+1]......
  • 在有序数组中找一个数
    #include<stdio.h>intmain(){ intarr[]={1,2,3,4,5,6,7,8,9,10}; inti=1; intse=sizeof(arr)/sizeof(arr[0]); intk=7; for(i=0;i<se;i++) { if(arr[i]==k)......