css - Vue中根据值动态添加类
问题描述
我面临一个问题,即根据元素的内容向元素添加动态样式。
<td class="text-xs-left">{{ props.item.limitCardStatus }}</td>
键的值limitCardStatus
存储在多个对象中,如下所示:“Active、Inactive、Sample”。
我想要实现的是将“Active”绿色、“Inactive”红色和“Sample”黄色着色。
到目前为止我所拥有的是:我生成了对应的 CSS 类和样式,并且我尝试使用v-for
with :class
,但我似乎无法弄清楚。
这是完整的表格:
<v-data-table :headers="headers" :items="limitCards" hide-actions>
<template v-slot:items="props">
<td class="tableNumber text-xs-left">{{ props.item.number }}</td>
<td class="text-xs-left">{{ props.item.limitCardNumber }}</td>
<td class="text-xs-left">{{ props.item.productCode }}</td>
<td class="text-xs-left">{{ props.item.plannedAmount }}</td>
<td class="text-xs-left">{{ props.item.productName }}</td>
<td
class="text-xs-left"
:class="{
'green--text': limitCardStatus === 'Active',
'yellow--text': limitCardStatus === 'Inactive',
'yellow--text': limitCardStatus === 'Sample',
}"
>{{ props.item.limitCardStatus }}</td>
</template>
</v-data-table>
Can someone point me in the right direction? Thanks in advance!
解决方案
您可以使用这样的动态类轻松完成
<div
class="text-xs-left"
:class="{
'green-color--text': limitCardStatus === 'Active',
'yellow-color--text': limitCardStatus === 'Inactive',
'yellow-color--text': limitCardStatus === 'Sample',
}"
>{{ props.item.limitCardStatus }}</div>
更多信息在这里
推荐阅读
- python - 如果源代码中不存在任何元素,如何抓取 url ?
- .net - 存储桶中存在键,但 api 为少数键返回“键不能为空或为空”
- powershell - PowerShell 脚本没有正确接受参数
- java - 错误找不到接口 javax.ws.rs.core.SecurityContext 的主要或默认构造函数
- c# - 了解 cmp(比较器函数)如何用作另一个函数的参数
- angular - “无法调用类型缺少调用签名的表达式。” 在 TypeScript 中使用“get”关键字时
- python - Flask-Restplus 如何将 2 个表中的数据组合成单个数据响应?
- python - Python - 线性回归
- python - Python:重定向在 os.system 上不起作用
- reactjs - 使用 Web 组件的单元测试反应