【发布时间】:2021-12-10 04:38:20
【问题描述】:
我有一个值在 0-1000 之间的 buefy 表,我想根据单元格值有条件地突出显示表中的单元格。例如,值高于 50 我想将单元格背景设置为绿色,25-50 为黄色,How to apply class to a specific cell in a Buefy Table? 但是这个解决方案似乎不起作用。
这是我目前的 buefy 表:
<b-table
:data="selectedProducts.productQuantities"
:row-class="(row, index) => row[0] === 'TOTAL'"
>
<b-table-column
label="quantity"
v-slot="props"
:class="cellObject(props.quantity)"
>{{ props.quantity }}
</b-table-column>
而且我有一个方法来计算并返回单元格的类:
methods: {
cellObject(quantity){
if(quantity < 25) {
return "is-red";
}
else if (quantity > 50) {
return "is-green";
}
else {
return "is-yellow";
};
},
返回以下类之一:
<style>
.is-red {
background: #343a40 !important;
font-weight: bold;
}
.is-yellow {
background: #ee3f3f !important;
font-weight: bold;
}
.is-green {
background: #41f841 !important;
font-weight: bold;
}
在反复摆弄它之后,我发现如果我这样做了 :cell-class="is-red" ,它会将其应用于整个列。
<b-table-column
label="quantity"
v-slot="props"
:cell-class="'is-red'"
>{{ props.quantity }}
</b-table-column>
【问题讨论】:
-
您是否在开发工具中检查过元素上是否存在这些类?
-
是的,确实如此。在摆弄它之后,我发现如果我这样做了 :cell-class="is-red" 它会将它应用于整个列。我在问题详情中添加了一张图片。
标签: html vue.js vuejs2 html-table buefy