Vue动态类名的实现

写了一年半小程序的我,近两天接手了一个H5的小项目,出于对vue的向往(啊,呸),决定捡一下vue的具体使用,那可真真是坑死我了。标签不一样、命令不一样、绑定数据不一样……总之用惯了小程序的语法,vue的啥啥都别扭,好嘞闲话不多说,今天我们来看一下vue的动态类名的绑定,记录一下方便日后查看。
Tips:vue设置动态属性是要用命令v-modal的哦,为了方便直接用半角冒号也可以啦,所以动态类名是主要这样写的“:class”。

无其他固定类名,只绑定动态类名
单个动态类名
<span :class="[2< 4 ? 'redColor' : '']">单次机油加注量:</span>

我给出的例子基本上都是三元运算符的,上面这个就是满足条件的就加上redColor这个类名。
特点:加单个动态类名要用“[]”这个括号包起来,类名也要用冒号包起来。

多个动态类名
<span :class="[item.IsShow==1?'':'itemBtnDis', item.IsSelect == 1?'itemBtnActive':'']" :index="index" :show="item.IsShow" v-for="(item,index) in getChoiceData.BrandList"></span>

上面这个是多个动态类名的,并且在循环中,根据循环数据满足或不满足某个条件的时候加上一个类名。
特点:跟单个冬天类名一样,类名与类名之前用都好隔开。

有其他固定类名,并添加动态类名
<span class="itemBtn" :class="[item.IsShow==1?'':'itemBtnDis', item.IsSelect == 1?'itemBtnActive':'']" :index="index" :show="item.IsShow" v-for="(item,index) in getChoiceData.BrandList"></span>

特点:有固定类名的,就还像之前那样写一个class赋上固定的类名,然后有动态类名的还想之前那样写在后面就可以了,但是要注意的是动态类名:class只能写一个哦,它属于标签的属性是不能重复的。

嗯,动态类名的写法大概就是这样,希望自己能记住,更希望能帮助到有需要的小伙伴们。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue中,你可以使用v-bind:class指令来动态添加类名。有多种方式可以实现动态添加类名的效果。 首先,你可以使用对象语法来动态绑定单个class。例如,你可以使用isActive变量来切换active类名的出现: <div :class="{ active: isActive == true }"></div> [1] 其次,你可以在对象中传入更多属性来动态切换多个类名。同时,v-bind:class指令也可以与普通的class属性共存。例如: Vue.component('my-component', { template: '<p class="foo bar">Hi</p>' }) <my-component class="baz boo"></my-component> [2] 此外,在v-for循环中动态添加类名也是常见的需求。为此,你可以按照以下步骤进行操作: 1. 在v-for循环的元素中,绑定一个key属性。 2. 在data中创建一个标识,例如isActive=0,这是为了初始化第一个标题为active。 3. 监听点击事件,触发一个方法,并传入点击元素的index,用来改变标识。 4. 在class属性中绑定条件表达式,判断当(index === 标识)时添加active类名。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [vue动态绑定类名的几种方法](https://blog.csdn.net/weixin_44251396/article/details/97390238)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [vue 添加动态类名的方法](https://blog.csdn.net/oLylia/article/details/126817688)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值