IT方面

vue动态绑定class的几种方式

2019-11-05  本文已影响0人  含羞草恋上梦昙花

一、对象方法

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

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

js部分:判断是否绑定一个active : data() { return { isActive: true }; }

结果渲染为: <div class="active"></div>

2、判断是否绑定一个active

:class="{'active':isActive==-1}"  或者 :class="{'active':isActive==index}"

3、绑定并判断多个

第一种(用逗号隔开) :class="{ 'active': isActive, 'sort': isSort }

第二种(放在data里面)//也可以把后面绑定的对象写在一个变量放在data里面,可以变成下面这样:class="classObject"data() {  return {    classObject:{ active: true, sort:false }   } }

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


二、数组方法

1、单纯数组

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

2、数组与三元运算符结合判断选择需要的class(注意:三元运算符后面的“:”两边的class需要加上单引号,否则不能正确渲染)

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

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

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

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

上一篇 下一篇

猜你喜欢

热点阅读