地区 列(prop="region_name"): 显示 “地区” 数据,宽度固定为 85像素,文本不允许换行,超出部分自动显示省略号,当鼠标悬停在单元格上时,将显示完整内容。帮我写一下
时间: 2024-10-15 19:19:02 浏览: 25
在HTML模板中,你可以这样描述“地区”列的属性:
```html
<el-table-column
prop="region_name"
label="地区"
fixed="left" <!-- 如果你想让列固定左边 -->
width="85px"
:formatter="formatRegionName" <!-- 自定义渲染函数 -->
>
<template slot-scope="scope">
<span v-if="!isOverflow">{{ scope.row.region_name }}</span>
<span v-else>{{ scope.row.region_name | shortenWithEllipsis }}</span>
</template>
</el-table-column>
<script>
export default {
methods: {
formatRegionName(row) {
if (row.region_name.length > 85) {
this.isOverflow = true;
return row.region_name.substring(0, 82) + "...";
} else {
this.isOverflow = false;
return row.region_name;
}
},
shortenWithEllipsis(str) {
return str;
}
},
data() {
return {
isOverflow: false,
};
},
computed: {
// 如果你有预设的长文本处理逻辑,也可以在这里实现
}
}
</script>
```
这里使用了 Vue 的 `v-if` 和 `v-else` 来控制是否显示全名还是省略号,`formatter` 属性用于自定义单元格内容的渲染。如果 `region_name` 长度超过 85 字符,会显示省略号。
阅读全文