一、对象方法

1、最简单的绑定

<div :class="{ 'active': isActive }"></div>

2、判断是否绑定一个active

<div :class="{'active':isActive==-1}"></div>  
或者
<div :class="{'active':isActive==index}"></div>

3、绑定判断多个

第一种:
<div :class="{ 'active': isActive, 'sort': isSort }"></div>

第二种(放在data里面)
<div :class="classObj"></div>
data() {
  return {
    classObject:{ active: true, sort:false }
  }
}

第三种(使用computed属性)
<div :class="classObject"></div>
data() {
  return {
    isActive: true,
    isSort: false
  }
},
computed: {
  classObject: function () {
    return {
      active: this.isActive,
      sort:this.isSort
    }
  }
}

二、数组方法

1、单纯数组

<div :class="[isActive,isSort]"></div>
data() {
  return{
    isActive:'active',
    isSort:'sort'
 }
}

2、数组与三元运算符结合判断选择需要的class

:class="[isActive?'active':'']"
或者
:class="[isActive==1?'active':'']"
或者
:class="[isActive==index?'active':'']"
或者
:class="[isActive==index?'active':'otherActiveClass']"

3、 数组对象结合动态判断

//前面这个active在对象里面可以不加单引号,后面这个sort要加单引号
:class="[{ active: isActive }, 'sort']"
或者
:class="[{ active: isActive==1 }, 'sort']"
或者
:class="[{ active: isActive==index }, 'sort']"

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐