vue实现动态class

这篇具有很好参考价值的文章主要介绍了vue实现动态class。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

总结一下,vue实现动态class主要通过以下三种方式文章来源地址https://www.toymoban.com/news/detail-808527.html

1 通过对象方式

动态绑定一个类名的写法
:class="{ 'on': ifOn }"

动态绑定多个类名的写法
:class="{ 'on': ifOn, 'disabled': ifDisabled }"

如 ifOn / ifDisabled 都是vue的变量,为真则对应key的class类名生效

当动态class类名过多/条件判断过于复杂,可通过定义变量/使用computed属性来实现

定义变量方式

:class="classConfig"
data() {
  return {
    classConfig:{ on: true, disabled: false }
  }
}

computed属性方式

data() {
  return {
    on: true,
    disabled: false
  }
}

computed: {
  classConfig: function () {
    return {
      on: this.on,
      disabled: this.disabled
    }
  }
}


2 通过数组方式

通过变量直接绑定
:class="[className1, className2]"
data() {
  return{
    className1:'className1',
    className2:'className2'
 }
}

通过三元表达式条件判断
单个
:class="[ifOn ? 'on' : 'not-on' ]"
多个
:class="[ifOn ? 'on' : 'not-on', ifDisabled ? 'disabled' : 'not-disabled' ]"

3 通过数组+对象嵌套方式

:class="[{ 'on': ifOn }, 'disbaled']"

4 总结

对象方法主要通过

{'className': Boolean}

Boolean为vue内部定义的变量,为真则生效

数组方法主要通过

[Boolean? 'className1': 'className2' ]

Boolean为vue内部定义的变量,为真则className1生效,反之则className2生效

两者结合主要是数组内嵌对象格式

className需要加引号

到了这里,关于vue实现动态class的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端魔法:掌握动态 class,让网页元素随心所欲

    当你动态的添加类名,在某个变量匹配需求时自动切换到某个类名,实现其对应的效果。这个过程就是我们常说的动态 class ,今天就和大家一起聊聊前端中的动态 class 。 1.1 绑定单个 class 我们可以传给 v-bind:class 一个对象,以动态地切换 class ,如下案例: 实现效果 1.2 绑定

    2024年02月05日
    浏览(53)
  • [VUE学习]权限管理系统前端vue实现9-动态路由,动态标签页,动态面包屑

                    在总体布局页面添加router router-view 是 Vue Router 提供的组件,用于动态展示匹配到的路由组件内容。 通过在合适的位置放置 router-view ,你可以根据路由路径动态地渲染对应的组件内容。                     因为我们是多级页面 之后动态路由也是多级的 如

    2024年02月13日
    浏览(45)
  • 【vue】Vue中class样式的动态绑定

    简介: Vue 中 class 样式的绑定 1、字符串写法 使用场景 :样式的类型不确定 写法: 手动触发样式改变 注意:字符串使用的是vue实例data中已有的属性 2、对象写法 使用场景 :样式个数、类名确定,通过Bollean动态展示与否 写法: 对象写在内联样式 对象写在data中 3、数组写法

    2024年02月15日
    浏览(37)
  • 前端开发攻略---JS将class转换为function。满分写法无死角

    \\\'use strict\\\' : class中的代码全部都是在一个 严格模式 下,对于一些不安全的操作会抛出错误,使代码更加规范。 function Example(name) { ... } : 这是一个函数声明,函数名为  Example ,它接受一个参数  name 。这个函数充当了类的构造函数的角色。 函数名与class名相同 。 if (!new.targ

    2024年04月16日
    浏览(36)
  • vue 3 第二十七章:样式(动态class、动态style)

    在 Vue 中,我们可以使用动态绑定语法来动态地添加类名或样式。本章将介绍 Vue 3 中如何使用动态绑定语法来动态地添加类名或样式。 在 Vue 中,我们可以使用 :class 或 v-bind:class 指令来动态地添加类名。例如,下面的例子中,我们可以根据 isActive 的值动态地为元素添加 act

    2024年02月07日
    浏览(41)
  • vue动态绑定class的几种方法

    一、对象语法 1、给v-bind:class 设置一个对象,可以动态地切换class,例如: 最终渲染结果: div class=\\\"active\\\"/div 2、对象中也可存在多个属性,动态切换class,:class 可以合class共存 最终渲染结果: div class=\\\"static active\\\"/div 3、当:class的表达式过长或逻辑复杂时,可以绑定一个计算

    2024年02月13日
    浏览(40)
  • 前端实现真实可动态变化进度条,axios+ Ant Design Vue实现.

    最近有一个新需求,要求在前端实现真实的进度条展示,我首先想到了  Ant Design Vue的upload组件, 在antd官网里upload组件不仅有上传功能,并且还附带了 Progress 进度条组件, 还拥有上传成功和失败的两种状态的区分,可以说是十分贴心了,如图  但是很可惜这个组件上传文件的话,你要

    2024年02月09日
    浏览(32)
  • 前端js react vue怎么实现在线预览doc文档

    先说结论: 目前在纯前端层面没有很好的方案,基本都需要服务端的介入。 优点 :简单易用,无需配置 缺点 :文档需要支持外网访问,且文档会是公开可见的,所以对于一些内部敏感的文档来说,这个显然是不可行的。 需要后端介入配合 onlyoffice地址 这个也要先在服务器

    2024年02月15日
    浏览(80)
  • uniapp、vue中动态添加绑定style、class

    1.普通对象动态添加(比较常见) 2. 数组 对象动态添加 3.三目运算动态添加

    2024年02月16日
    浏览(36)
  • vue+face-api.js实现前端人脸识别功能

    近期做了一个前端vue实现人脸识别的功能,主要功能逻辑包含:人脸识别,人脸验证,唤起摄像头视频流之后从三个事件(用户点头、摇头、眨眼睛)中随机选中两个事件,待两个事件通过判断后人脸静止不动3秒钟后截取视频流生成图片,上传到阿里或者腾讯oss,通过oss返回

    2024年02月05日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包