el-table某一列数值根据条件赋值为"-",其他值为金额数值,如何获取该列的"-"值?
时间: 2024-10-16 10:16:26 浏览: 21
在ECharts Table(el-table)组件中,如果想实现某列数值根据特定条件显示为"-",你可以通过设置单元格的渲染函数(cell-render)来动态处理数据。以下是一个基本的示例:
```javascript
<template>
<el-table-column prop="columnToWatch" label="Amount">
<template slot-scope="scope">
<span :innerHTML="getFormattedValue(scope.row)"></span>
</template>
</el-table-column>
</template>
<script>
export default {
methods: {
getFormattedValue(row) {
if (/* 根据row.data里的某个字段判断条件 */) {
return '-';
} else {
return row.amount; // 或者row[columnToWatch],这里假设amount是你实际的数据字段
}
},
},
};
</script>
```
在这个例子中,`getFormattedValue`方法会检查每一行的`row`对象,如果满足条件,则返回`'-`',否则返回实际的金额值。
如果你想针对所有行都做这个处理,可以在`data`选项中初始化时直接设置:
```javascript
data() {
return {
tableData: [
{ amount: '100', formattedAmount: this.getFormattedValue({ amount: '100' }) }, // 如果100符合条件,显示-
{ amount: '-50', formattedAmount: '-' }, // 如果-50已经为"-"
// ...
],
};
},
```
然后在模板里只显示`formattedAmount`:
```html
<template slot-scope="scope">
{{ scope.row.formattedAmount }}
</template>
```
阅读全文