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

elementPlus el-table动态列扩展及二维表格

1、循环列数据源,动态生成列

<template><div><el-table ref="table" :data="pageData.tableData" stripe style="width: 100%"><el-table-column v-for="column in pageData.columns" :key="column.prop" :prop="column.prop" :label="column.label":min-width="column.minWidth"></el-table-column></el-table></div>
</template><script setup lang="ts">
import {reactive} from 'vue';const pageData = reactive({columns: [{prop: 'source',label: '来源',minWidth: '100px'},{prop: 'target',label: '目标',minWidth: '100px'},{prop: 'value1',label: 'value1(万)',minWidth: '150px'},{prop: 'value2',label: 'value2(亿)',minWidth: '150px'},],tableData: [{source: '北京',target: '上海',value1: '189',value2: '1.89'}, {source: '天津',target: '河北',value1: '233',value2: '2.33'}, {source: '上海',target: '陕西',value1: '97',value2: '0.97'}, {source: '内蒙古',target: '山东',value1: '180',value2: '1.80'}]
});</script>

2、对某一列用slot的方式拓展,把这一列拓展成多列

<template><div><el-table :data="tableData"><el-table-column label="来源" prop="source"></el-table-column><el-table-column label="目标" prop="target"></el-table-column><el-table-column v-for="(item, index) in tableData[0].zbList" :key="index"><template #header>{{ item.zb }}</template><template v-slot="{ row }">{{ row.zbList[index].value }}</template></el-table-column></el-table></div>
</template><script lang="ts" setup>
import {ref} from 'vue';const tableData = ref([{source: '北京',target: '上海',zbList: [{zb: '指标一',value: '2000'},{zb: '指标二',value: '4000'},{zb: '指标三',value: '6000'},]
},{source: '北京',target: '天津',zbList: [{zb: '指标一',value: '20'},{zb: '指标二',value: '40'},{zb: '指标三',value: '60'},]},
]);
</script>

3、二维表格

<template><el-table :data="data.tableData" style="width: 100%"><el-table-column prop="color" label="颜色\尺码" width="180"></el-table-column><el-table-column v-for="(i, index) in data.sizes" :label="i" align="center" header-align="center" :key="index"><template v-slot="scope">{{ scope.row[i] }}</template></el-table-column></el-table>
</template>
<script setup lang="ts">
import {reactive} from 'vue';const data = reactive({sizes: ["x", "xl"],tableData: [{color: "red",xl: 10,x: 0},{color: "blue",xl: 10,x: 0},{color: "black",xl: 10,x: 5}],
});</script>

参考: Element-plus的el-table动态列表格_elementplus 带状态表格-CSDN博客

            前端(PC)—elementUI实现二维表格 - 简书

http://www.lryc.cn/news/333553.html

相关文章:

  • vitepress系列-04-规整sideBar左侧菜单导航
  • golang slice总结
  • MySQL 数据库的优化
  • Redis 的主从复制、哨兵和cluster集群
  • Unity进阶之路(2)UI Toolkit
  • 实现Hello Qt 程序
  • 若依 ruoyi-vue 接口挂载获取Resources静态资源文件权限校验
  • 【STM32嵌入式系统设计与开发】——16InputCapture(输入捕获应用)
  • 「论文阅读」还在手写Prompt,自动Prompt搜索超越人类水平
  • 安全测试概述和用例设计
  • JavaScript 超详细学习思路
  • LeetCode:1483. 树节点的第 K 个祖先(倍增 Java)
  • ConstraintLayout在复杂布局中,出现卡顿问题解决记录
  • 责任链模式详解+代码案例
  • 如何让Webots支持C#语言开发的控制器
  • 如何将本地仓库放到远程仓库中
  • Jedis-事务
  • 智慧安防监控EasyCVR视频调阅和设备录像回看无法自动播放的原因排查与解决
  • 百元不入耳蓝牙耳机哪个好?必入五款高性价比产品
  • android APP monkey 测试
  • IMBoy缓存系统深度解析:为何选择depcache而非ETS或Redis
  • Twitter Api查询用户粉丝列表
  • 深入理解计算机系统 家庭作业 2.96
  • 主函数if __name__ == ‘__main__‘:
  • 34.Python从入门到精通—Python3 正则表达式检索和替换
  • springboot 反射调用ServiceImpl时报错:java.lang.NullPointerExceptio、,mapper为null【解决方法】
  • 内网安全之域内密码喷洒
  • 何为HTTP状态码?一文清楚基本概念。
  • SV学习笔记(七)
  • Windows SDK(五)按钮静态文本与编辑框控件