码迷,mamicode.com
首页 > 其他好文 > 详细

vue项目动态绑定class

时间:2020-03-10 21:31:07      阅读:57      评论:0      收藏:0      [点我收藏+]

标签:cli   动态   order   font   border   tabbar   control   efault   exp   

描述:如下图,点击哪个tabbar就让哪个的样式改变
技术图片

 

 

思路:
定义一个变量currentIndex用来记录点击的是哪个,然后当点击的index == currentIndex时,就给它绑定一个class active
实现:
<template>
    <div class="tabcontrol">
        <div class="tabcontrol-item" v-for="(item, index) in feature" 
        :key="index"
        :class="{active: index === currentIndex}"
        @click="itemClick(index)">
            <span>{{item}}</span>
        </div>
    </div>
</template>
<script>
export default {
    name: ‘TabControl‘,
    props: {
        feature: {
            type: Array,
            default: []
        }
    },
    data(){
        return {
            currentIndex: 0 //记录当前点击的是哪一个就
        }
    },
    methods: {
        itemClick (index) {
            //改变currentIndex
            this.currentIndex = index
        }
    }
}
</script>
<style scoped>
.tabcontrol {
    display: flex;
    text-align: center;
    background: #fff;
}
.tabcontrol-item {
    flex: 1;
}
.active {
    color: var(--color-high-text);
}
.active span {
    border-bottom: 2px solid var(--color-high-text);
  }
</style>

 

vue项目动态绑定class

标签:cli   动态   order   font   border   tabbar   control   efault   exp   

原文地址:https://www.cnblogs.com/lyt0207/p/12458481.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!