为了账号安全,请及时绑定邮箱和手机立即绑定

vue动态绑定class的几种方式

标签:
Vue.js
对象方法

-最简单的绑定(这里的active加不加单引号都可以,以下也一样都能渲染)

:class="{ 'active': isActive }"
  • 判断是否绑定一个active

:class="{'active':isActive==-1}"  或者
:class="{'active':isActive==index}"
  • 绑定并判断多个

第一种(用逗号隔开)
:class="{ 'active': isActive, 'sort': isSort }"第二种(放在data里面)//也可以把后面绑定的对象写在一个变量放在data里面,可以变成下面这样:class="classObject"data() {  return {    classObject:{ active: true, sort:false }
  }
}
第三种(使用computed属性)
:class="classObject"data() {  return {    isActive: true,    isSort: false
  }
},computed: {  classObject: function () {    return {      active: this.isActive,      sort:this.isSort
    }
  }
}
数组方法
  • 单纯数组

:class="[isActive,isSort]"data() {  return{
    isActive:'active',
    isSort:'sort'
 }
}
  • 数组与三元运算符结合判断选择需要的class
    (注意:三元运算符后面的“:”两边的class需要加上单引号,否则不能正确渲染)

:class="[isActive?'active':'']"或者
:class="[isActive==1?'active':'']"或者
:class="[isActive==index?'active':'']"或者
:class="[isActive==index?'active':'otherActiveClass']"
  • 数组对象结合动态判断

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



作者:前端来入坑
链接:https://www.jianshu.com/p/45dbac5035e2


点击查看更多内容
3人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消