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

【vxe-table】多选筛选项对列表的列进行动态的显示与隐藏

需求:
列表的组成部分由:一些固定的列,如:姓名,工号,以及 需要动态显示与隐藏的列,如:出勤、旷工、事假、病假等假勤类型
1、通过多选框多选,展示选中的列,未选中的不展示
2、当多选框全部清空的时候,展示原来的所有列

   <el-form-item label="假勤类型:"><MutiSelectv-model="attendanceTypeArr":dictOption="dictOptions.attendance_type"@change="val => mutiChange(val, 'attendanceType')"style="width: 140px"></MutiSelect></el-form-item>
 	<VxeTable            :vxe-table-id="vxeTableId":columns="isNew ? newColumns : columns":dataSource="dataSource"></VxeTable>

data

      newColumns: [],columns: [],dataSource: [],
    // 假勤类型多选事件mutiChange(val, type) {if (type == 'attendanceType') {let matchedLabels = []this.dictOptions.attendance_type.forEach(item => {// 遍历val中的每个vval.forEach(v => {// 如果item.dictValue等于v,将item.dictLabel添加到matchedLabels数组中if (item.dictValue === v) {matchedLabels.push(item.dictLabel)}})})let filteredColumns = this.columns.filter(column => {// 检查列的title是否包含matchedLabels中的值return (matchedLabels.some(label => column.title.includes(label)) || ['userCode', 'userName', 'deptName', 'postName', 'userType'].includes(column.field))})// 此时filteredColumns数组中包含了过滤后的列定义this.isNew = truethis.newColumns = filteredColumnsif (val.length == 0) {this.newColumns = this.columns}}},
http://www.lryc.cn/news/477522.html

相关文章:

  • 微信小程序uniapp+vue飞机订票航空售票系统
  • 如何取消Outlook中的循环会议
  • Docker-- cgroups资源控制实战
  • 使用Python和Vosk库实现语音识别
  • stm32使用串口的轮询模式,实现数据的收发
  • 105. UE5 GAS RPG 搭建主菜单
  • 基于 JAVASSM(Java + Spring + Spring MVC + MyBatis)框架开发一个医院挂号系统
  • Golang | Leetcode Golang题解之第540题有序数组中的单一元素
  • 影刀RPA实战:嵌入python,如虎添翼
  • es 数据清理delete_by_query
  • 【每日 C/C++ 问题】
  • stm32学习4
  • Midjourney国内直登
  • 【双目视觉标定】——3面结构光相机标定实践(获取相机内参)~未完待续
  • Python常用脚本集锦
  • MacBook 如何设置打开json格式文件的默认程序是vs code
  • 如何在 Spring Boot 中实现多数据源的事务管理?
  • SQL 常用更新操作
  • Android camera2
  • nginx监控指标有哪些
  • 我谈正态分布——正态偏态
  • 如何使用uniswap v2 获取两个代币的交易对池子
  • CSS中常见的两列布局、三列布局、百分比和多行多列布局!
  • GaussDB Ustore存储引擎解读
  • JAVA基础:数组 (习题笔记)
  • VMWARE ESXI VMFS阵列故障 服务器数据恢复
  • 实时金融股票数据API接口websocket接入方法
  • 机器学习与成像技术
  • 【系统架构设计师】预测试卷一:综合知识(75道选择题)
  • 【addRepository 在tomcat 8和tomcat 9的支持情况】