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

使用el-table时,某个字段对应多个key值,如何进行展示

前言:

当我们使用下拉框,支持多选的时候,数据库中,存储的是以逗号分隔的key

展示列表的时候,出现存储到数据库中的字段值,如下图所示

显然是不合理的,因此我们需要对其进行转移成,汉字

我们拆分步骤,首先将key值转化为name

computed: {orgTypeMap() {const map = {}this.orgTypeOptions.forEach(option => {map[option.key] = option.name})return map}
}

其次,调用方法,解析字符串数据

    formatOrgTypes(orgTypeStr) {if (!orgTypeStr) return ''const types = orgTypeStr.split(',')const displayNames = types.map(type => this.orgTypeMap[type] || type)return displayNames.join(',')}
// 代码中的用法
const types = ['wind', 'otherEnergy'];
const displayNames = types.map(type => typeMap[type]);
const result = displayNames.join(','); // "风,其他能源"

完整代码如下所示:

<template><el-table :data="tableData"><el-table-column prop="orgType" label="机构类型"><template #default="scope">{{ formatOrgTypes(scope.row.orgType, '/') }}</template></el-table-column></el-table>
</template><script>
export default {data() {return {orgTypeOptions: [{ key: 'wind', name: '风' },{ key: 'otherEnergy', name: '其他能源' },{ key: 'localSubCompany', name: '本地子公司' }],tableData: [{ orgType: 'wind,otherEnergy,localSubCompany' },{ orgType: 'wind,otherEnergy' },{ orgType: 'localSubCompany' }]}},computed: {orgTypeMap() {const map = {}this.orgTypeOptions.forEach(option => {map[option.key] = option.name})return map}},methods: {formatOrgTypes(orgTypeStr, separator = ',') {if (!orgTypeStr) return ''const types = orgTypeStr.split(',')const displayNames = types.map(type => this.orgTypeMap[type] || type).filter(name => name) // 过滤空值return displayNames.join(separator)}}
}
</script>

效果图:

http://www.dtcms.com/a/535773.html

相关文章:

  • 空间数据采集与管理(如何使用ArcGIS Pro和Python进行空间数据的管理,确保数据采集和组织的高效性和准确性)
  • WHAT - React Compiler Directives 让手动优化变成过去式
  • API请求关键指标全解:Apipost视角下,从连接到性能的全景分析
  • HTML 的底层原理
  • 布吉做网站的公司关于网站建设的图片
  • 服务器运维(六)网站访问分析统计——东方仙化神期
  • 【Docker】定制化构建一个可以运行GaussDB的kylinv10sp3系统的docker镜像
  • 5分钟搭建云IDE!CodeServer+cpolar打造跨设备开发工作站
  • vmware和kali linux安装和搭建
  • 网络:网络层(IP协议)和数据链路层
  • DDS和SOMEIP区别以及应用场景
  • Lumi 具神智能机器人 SDK说明和ACT算法中的学习与推理
  • Rokid AR眼镜开发入门:构建智能演讲提词器Android应用
  • 量化指标解码03:布林带的开口收口策略与市场波动性分析
  • 深圳网站建设报价表廊坊建手机网站
  • 余姚网站推广wordpress多个域名
  • CSS引入方式(本文为个人学习笔记,内容整理自哔哩哔哩UP主【非学者勿扰】的公开课程。 > 所有知识点归属原作者,仅作非商业用途分享)
  • SuperMap iObjects .NET 11i 二次开发(十六)—— 叠加分析之合并
  • 【Linux笔记】网络部分——传输层协议UDP
  • Ansible 自动化项目结构与 Harbor 安装示例(基于 kubeasz)①
  • Spring 源码学习(十五)—— HandlerMethodReturnValueHandler
  • everviz 数据可视化平台
  • 12 U盘挂载
  • 【Kylin Linux root 密码故障处置指南(超限重试 + 改回原密码)】
  • 网络原理:数据链路层、NAT与网页加载
  • 【从零开始开发远程桌面连接控制工具】01-项目概述与架构设计
  • 网站建设竞价托管什么意思在国内做推广产品用什么网站好
  • 有没有做宠物的网站网站开发中间商怎么做
  • 深度强化学习 | 详解从信赖域策略优化(TRPO)到近端策略优化(PPO)算法原理
  • 在类中定义装饰器:Python高级元编程技术详解