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

vue动态改变el-table表格列

方法1

<template><divclass="mainBox"><divclass="optshowBox"><el-popoverplacement="bottom"trigger-"click"width="200"popper-class="popperStyle"><template#reference><ptitle="表头配置"><el-iconisize="20"><Setting/></el-icon></p></template><div><el-checkbox-groupv-model="checkedHeaders"><el-checkboxv-for="item in state.options":key="item.prop":label-"item.prop">{{item.label}}</el-checkbox></el-checkbox-group></div></el-popover><el-popoverplacement="right"trigger="hover"width="260"popper-class="popperstyle"></el-popover></div><divclass="tableBox"><el-table:data="state.tableData"v-loading="state.searchLoading"id="exportTab”style="width:100%” height="100%"borderhighlight-current-rowref="yjRef"><el-table-columnlabel="序号"width="45"><!--分页连续序号--><template#default="{$index}">{{ (state.pageNum -1) * state.pagesize + $index +1 }}</template></el-table-column><el-table-columnv-for="(item, index) in filterHeaders":key="index":prop="item.prop":label="item.label":width="item.width"></el-table-column></el-table></div></div></template><scriptsetup>import{onMounted,reactive,ref,watch,computed}from'vue'conststate=reactive({pageSize:10,pageNum:1,options:[{prop:'title',label:'标题'},{prop:'readPercentage',label:'读取进度'},{prop:'analysePercentage',label:'解析进度'},{prop:'savePercentage',label:'保存进度'},{prop:'executeTime',label:'执行时间'},{prop:'finishTime',label:'完成时间'},{prop:'status',label:'状态'},{prop:'code',label:'接口结果'},],})//表头默认需要隐藏的多个字段consthidelist=['savePercentage','executeTime','finishTime',]constcheckedHeaders=ref(state.options.filter(item=>!hideList.includes(item.prop)).map(el=>el.prop))// 表头默认需要隐藏的单个字段// const checkedHeaders = ref(state.options.filter(item=>item.prop !=='bj').map(el=>el.prop)) //默认标记不展示watch(checkedHeaders,(newval)=>{localstorage.setItem('tale-header',JSON.stringify(newval))},{deep:true})constfilterHeaders=computed(()=>{returnstate.options.filter(el=>checkedHeaders.value.includes(el.prop))})</script>

方法2

<template><divclass="conter"><el-table:data="tableData"stripeborderstyle="width:98%"ref="tableDataRef"><!-- <el-table-column type="selection" width="55" align="center"></el-table-column> --><el-table-columntype="index"width="55"label="序号"align="center"></el-table-column><el-table-columnv-if="colData[0].istrue"prop="name"label="名称"align="center"></el-table-column><el-table-columnv-if="colData[1].istrue"prop="select"label="性别"align="center"></el-table-column><el-table-columnv-if="colData[2].istrue"prop="kafang"label="年龄"align="center"></el-table-column><el-table-columnv-if="colData[3].istrue"prop="fengbi"label="时间"align="center"></el-table-column><el-table-columnv-if="colData[4].istrue"prop="isETF"label="事件"align="center"></el-table-column><el-table-columnv-if="colData[5].istrue"prop="range"label="地点"align="center"></el-table-column></el-table><el-popoverplacement="right"width="400"trigger="click"><el-checkbox-groupv-model="colOptions"><el-checkboxv-for="item in colSelect":label="item":key="item"></el-checkbox></el-checkbox-group><el-buttonslot="reference">设置</el-button></el-popover></div></template><script>exportdefault{data(){return{tableData:[{name:'fruit-1',date:'apple-10',select:'banana-10',kafang:'orange-10'},{name:'fruit-2',date:'apple-20',select:'banana-20',kafang:'orange-20'}],colData:[{title:"名称",istrue:true},{title:"性别",istrue:true},{title:"年龄",istrue:true},{title:"时间",istrue:true},{title:"事件",istrue:true},{title:"地点",istrue:true}],colOptions:[],colSelect:[],}},mounted(){},created(){var_this=this;for(leti=0;i<_this.colData.length;i++){_this.colSelect.push(_this.colData[i].title);// if (_this.colData[i].title == '名称') { //初始化不想展示的列可以放在这个条件里// continue;// }_this.colOptions.push(_this.colData[i].title);}},watch:{colOptions(valArr){vararr=this.colSelect.filter(i=>valArr.indexOf(i)<0);// 未选中this.colData.filter(i=>{if(arr.indexOf(i.title)!=-1){i.istrue=false;this.$nextTick(()=>{this.$refs.tableDataRef.doLayout();});}else{i.istrue=true;this.$nextTick(()=>{this.$refs.tableDataRef.doLayout();});}});}},methods:{}}</script>
http://www.jsqmd.com/news/1160928/

相关文章:

  • 2026酒店民宿全屋中央净水器热门品牌推荐井水黄泥水过滤效果口碑公认 - 净水小天地
  • 线控底盘技术
  • 程序员的35岁,不是门槛,是面照妖镜
  • 黄皮暗沉肌面膜哪家好:蜜妙诗行业优选 - MXyuyu
  • 如何快速获取网盘真实下载地址:9大平台完整指南
  • Visual C++ Redistributable AIO终极指南:如何一键修复所有Windows运行库问题
  • 如何高效获取在线文档?专业文档下载工具kill-doc的智能解决方案
  • Unity NGO多人游戏网络问题排查:从连接失败到同步优化的全链路指南
  • 2026 上海手表回收避坑全攻略,拆解商家常见套路不踩亏 - 全国二奢机构参考
  • CAF相关PCF80研究设计:从肿瘤间质到免疫邻域的多维选题框架
  • 企业级React项目落地Cursor AI的3大红线与4个黄金检查点(CTO亲审技术白皮书节选)
  • 百达翡丽电话维修售后保养服务方案权威公示(2026年7月最新) - 百达翡丽官方售后中心
  • Python实战:逆向QQ协议实现手机号关联查询的技术解析
  • 【国产大模型突围战】:Kimi凭何拿下清华、中科院内部首选?——对比ChatGPT-4o在学术文献解析、公式推导、多跳推理中的17项关键指标
  • 2026年AI大模型API加速系统权威选购指南:主流服务商性能与成本全维度排名推荐
  • OpenCV 位姿与投影变换
  • ABAP 里没有 @SpringBootApplication,但有一套更 SAP 化的应用装配方式
  • 如何让ChatGPT写出导师认可的引言段?——5分钟重构Prompt结构,实现学术语义精准对齐(附CiteSpace验证图谱)
  • 劳力士官方售后服务中心地址电话一览实地考察报告+多信源验证(2026年7月更新) - 劳力士服务中心
  • 2026车窗玻璃贴膜遮阳膜选购:隔热太阳安全膜品牌厂家主机厂原厂膜供应商推荐 - 栗子测评
  • 正点原子ZYNQ7010/7020核心板选型指南:85K vs 28K逻辑单元与3大应用场景解析
  • 从bulk到空间蛋白组:CAF分类的组织原位观察思路
  • RimSort终极教程:3步彻底解决环世界模组冲突问题
  • CAF空间原型与肿瘤微环境观察:七类基质生态位的研究启发
  • 2026年7月大连正规救护车转运费用_高性价比服务 - 小校长
  • 苏州卫生间漏水不砸砖能修好吗?真相不是你想的那样 - 徽顺虹
  • 网盘下载慢的终极解决方案:本地直链解析工具完全指南
  • Markdown Viewer插件:从零开始打造你的完美文档阅读体验
  • 2026汽车改色膜哪家好/漆面保护膜哪家靠谱/车衣厂家品牌推荐汇总 - 栗子测评
  • Minecraft世界优化终极指南:使用MCA Selector进行专业级区块管理