实现效果图: 默认选中第一个按钮,未选中按钮为粉色,点击时颜色变为红色
利用动态类名,当定义isChange数值和下标index相同时,赋予act类名,实现变色效果
<template><view class="page"><view class="btns" v-for="(item, index) in 6"><view class="btn" :class="{ act: isChange === index }" @click="change(index)">按钮{{ index + 1 }}</view></view></view>
</template>
<script>
import { ref } from 'vue';
export default {setup() {const isChange = ref(0);const change = ty => {isChange.value = ty;};return { isChange, change };}
};
</script>
<style>
.page {padding: 50px;display: flex;flex-wrap: wrap;
}.btn {width: 60px;height: 30px;background-color: pink;margin: 10px;
}
.act {background-color: red;
}
</style>