当前位置: 首页 > news >正文

vue中如何动态的增减组件的类名(class)

在 Vue.js 2 中,你可以通过计算属性或直接在模板中使用 v-bind:class 来动态地改变组件的类名。下面是一个简单的示例,说明如何在某个条件被复核后为组件添加一个 selected 类(此处为组件添加一个默认的类(例如 radio)以及根据某个条件来添加 selected 类,你可以在绑定类的时候使用数组语法,以便同时添加多个类)

示例代码

<template>
  <div>
    <button @click="toggleCondition">切换条件</button>
    <div :class="['radio', { 'selected': isSelected }]">
      我是一个可选择的组件
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      isSelected: false, // 初始条件
    };
  },
  methods: {
    toggleCondition() {
      this.isSelected = !this.isSelected; // 切换条件
    },
  },
};
</script>

<style>
.radio {
  padding: 10px;
  border: 1px solid #ccc; /* 默认样式 */
}

.selected {
  background-color: yellow; /* 选中时的样式 */
}
</style>

解释

  1. 默认类:在 :class 中使用数组语法 ['radio', { 'selected': isSelected }]。这里 'radio' 是默认类,而 { 'selected': isSelected } 是条件类,表明只有在 isSelected 为 true 时才会添加 selected 类。
  2. 样式:定义了 .radio 类的样式和 .selected 类的样式。

通过这种方式,当你点击按钮切换 isSelected 的值时,组件会始终带有 radio 类,并根据条件动态添加或移除 selected 类。

相关文章:

  • OpenPose
  • 计算机世界的寻宝游戏:用C语言解密五大查找算法
  • 数据仓库与数据湖的协同工作:智慧数据管理的双引擎
  • 类和对象(5)——抽象类和接口
  • 云存储:云计算储存
  • 安卓设备调试h5页面(调试)
  • 量化交易入门指南
  • 《Stable Diffusion绘画完全指南:从入门到精通的Prompt设计艺术》-配套代码示例
  • 位运算,双指针,二分,排序算法
  • WeMos D1+PIR+Android 的小场景制作
  • freertos源码分析DAY12 (软件定时器)
  • 【第14章:神经符号集成与可解释AI—14.1 神经符号AI系统的基本原理与实现方法】
  • 一款简单的弹窗打赏页HTML源码
  • python入门详解
  • EasyRTC智能硬件:小体积,大能量,开启音视频互动新体验
  • ORB-SLAM3的源码学习: Settings.cc:Settings::readCamera1/readCamera2 从配置文件中加载相机参数
  • 【信息学奥赛一本通 C++题解】1282:最大子矩阵
  • Linux 文件与目录命令学习记录
  • 语音识别中的MFCC特征提取:时频分析如何转化为机器可理解的声学参数?(附完整代码实现)
  • Python常见面试题的详解7
  • 中国巴西民间推动建立经第三方验证的“森林友好型”牛肉供应链
  • 兰州大学教授安成邦加盟复旦大学中国历史地理研究所
  • A股三大股指涨跌互现:银行股领涨,两市成交12915亿元
  • “降息潮”延续,多家民营银行下调存款利率
  • 茅台回应“茅台1935脱离千元价位带竞争”:愿与兄弟酒企共同培育理性消费生态
  • 山东枣庄同一站点两名饿了么骑手先后猝死,当地热线:职能部门正调查