vue elementUI表格控制对应列


Posted in Vue.js onApril 13, 2022

需求:后端返回全部列数据。前端根据选项来显示对应的列,如果不勾选,默认全部隐藏。

效果图

勾选后显示对应的列

vue elementUI表格控制对应列

上代码

html部分

这里用v-if来显示隐藏,因为这个elementul组件的原因,v-show不生效,要用v-if

<el-table-column
        v-if="lists[0].ispass"
          label="Upper"
          prop="db28"
          show-overflow-tooltip
        ></el-table-column>
        <el-table-column
        v-if="lists[1].ispass"
          label="Lower"
          prop="db31"
          show-overflow-tooltip
        ></el-table-column>
        <el-table-column
        v-if="lists[2].ispass"
          label="UP+LOW"
          prop="db34"
          show-overflow-tooltip
        ></el-table-column>
        <el-table-column
        v-if="lists[3].ispass"
          label="Static"
          prop="db36"
          key="1"
          show-overflow-tooltip
        ></el-table-column>
        <el-table-column
        v-if="lists[4].ispass"
          label="LRO-T1 OA"
          min-width="90px"
          prop="db44"
          key="2"
          show-overflow-tooltip
        >
</el-table-column>

data部分

ispass是用来控制显示或隐藏的,label是用来判断的。

lists:[
          {label:'Upper',ispass:false},
          {label:'Lower',ispass:false},
          {label:'UP+LO',ispass:false},
          {label:'Static',ispass:false},
          {label:'LRO-T1 OA',ispass:false},
          {label:'LRO-T2 OA',ispass:false},
          {label:'LRO-B1 OA',ispass:false},
          {label:'LRO-B2 OA',ispass:false},
          {label:'RRO-C OA',ispass:false},
          {label:'LRO-T1 Buige',ispass:false},
          {label:'LRO-T2 Buige',ispass:false},
          {label:'LRO-B1 Buige',ispass:false},
          {label:'LRO-B2 Buige',ispass:false},
          {label:'LRO-T1 Dent',ispass:false},
          {label:'LRO-T2 Dent',ispass:false},
          {label:'LRO-B1 Dent',ispass:false},
          {label:'LRO-B2 Dent',ispass:false},
        ],
        check:[
        "Upper",
        "Lower",
        "UP+LO",
        "Static",
        "LRO-T1 OA",
        "LRO-T2 OA",
        "LRO-B1 OA",
        "LRO-B2 OA",
        "RRO-C OA",
        "LRO-T1 Buige",
        "LRO-T2 Buige",
        "LRO-B1 Buige",
        "LRO-B2 Buige",
        "LRO-T1 Dent",
        "LRO-T2 Dent",
        "LRO-B1 Dent",
        "LRO-B2 Dent",
      ],
      checkList: [
      ],

方法部分

直接用watch监听,复制就行。这里注意checkList和check
checkList:代表你多选框的默认选中,我没写就是默认全不选
check:这个也要写和lists里的label一样,用来判断的。

watch:{
      checkList(newVal){
            if (newVal) {
              var arr = this.check.filter(i => newVal.indexOf(i) < 0) //未选中
              this.lists.map(i => {
                if (arr.indexOf(i.label) !== -1) {
                  i.ispass = false
                } else {
                  i.ispass = true
                }
              })
            }
      }
    },

以上就是本文的全部内容。

Vue.js 相关文章推荐
vue+iview实现分页及查询功能
Nov 17 Vue.js
解决vue elementUI 使用el-select 时 change事件的触发问题
Nov 17 Vue.js
Vue页面渲染中key的应用实例教程
Jan 12 Vue.js
vue 项目@change多个参数传值多个事件的操作
Jan 29 Vue.js
Vue 实例中使用$refs的注意事项
Jan 29 Vue.js
Vue3 Composition API的使用简介
Mar 29 Vue.js
vue中三级导航的菜单权限控制
Mar 31 Vue.js
vue组件的路由高亮问题解决方法
May 11 Vue.js
Vue vee-validate插件的简单使用
Jun 22 Vue.js
Vue-Element-Admin集成自己的接口实现登录跳转
Jun 23 Vue.js
vue使用Google Recaptcha验证的实现示例
Aug 23 Vue.js
Vue3中toRef与toRefs的区别
Mar 24 Vue.js
vue项目打包后路由错误的解决方法
Apr 13 #Vue.js
vue的项目如何打包上线
vue2的 router在使用过程中遇到的一些问题
Apr 13 #Vue.js
vue+elementUI实现表格列的显示与隐藏
Apr 13 #Vue.js
如何优化vue打包文件过大
Apr 13 #Vue.js
使用vue判断当前环境是安卓还是IOS
Apr 12 #Vue.js
vue配置型表格基于el-table拓展之table-plus组件
Apr 12 #Vue.js
You might like
PHP实现的带超时功能get_headers函数
2015/02/10 PHP
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
2016/01/09 PHP
PHP+MySQL实现的简单投票系统实例
2016/02/24 PHP
将PHP程序中返回的JSON格式数据用gzip压缩输出的方法
2016/03/03 PHP
php使用gd2绘制基本图形示例(直线、圆、正方形)
2017/02/15 PHP
PHP网页安全认证的实例详解
2017/09/28 PHP
PHP实现的大文件切割与合并功能示例
2018/04/10 PHP
jquery 页面全选框实践代码
2010/04/02 Javascript
jQuery温习篇 强大的JQuery选择器
2010/04/24 Javascript
javascript中运用闭包和自执行函数解决大量的全局变量问题
2010/12/30 Javascript
jquery1.5.1中根据元素ID获取元素对象的代码
2011/04/02 Javascript
Js日期选择自动填充到输入框(界面漂亮兼容火狐)
2013/08/02 Javascript
js控制浏览器全屏示例代码
2014/02/20 Javascript
jQuery实现按钮的点击 全选/反选 单选框/复选框 文本框 表单验证
2015/06/25 Javascript
JS/jQuery判断DOM节点是否存在的简单方法
2016/11/24 Javascript
bootstrap模态框嵌套、tabindex属性、去除阴影的示例代码
2017/10/17 Javascript
bootstrap table合并行数据并居中对齐效果
2018/10/17 Javascript
Python写的PHPMyAdmin暴力破解工具代码
2014/08/06 Python
Python中函数的参数定义和可变参数用法实例分析
2015/06/04 Python
在Python中定义和使用抽象类的方法
2016/06/30 Python
Python极简代码实现杨辉三角示例代码
2016/11/15 Python
Django 2.0版本的新特性抢先看!
2018/01/05 Python
python 图像判断,清晰度(明暗),彩色与黑白实例
2020/06/04 Python
浅谈matplotlib中FigureCanvasXAgg的用法
2020/06/16 Python
Python中Selenium库使用教程详解
2020/07/23 Python
美国内衣第一品牌:Hanes(恒适)
2016/07/29 全球购物
新西兰廉价汽车租赁:Snap Rentals
2018/09/14 全球购物
医院检讨书范文
2014/02/01 职场文书
质量承诺书怎么写
2014/05/24 职场文书
蛋糕店创业计划书范文
2014/09/21 职场文书
2015年度个人工作总结报告
2015/10/24 职场文书
2016新年晚会开场白
2015/12/03 职场文书
2019年度行政文员工作计划范本!
2019/07/04 职场文书
导游词之镇江焦山
2019/11/21 职场文书
React Hook用法示例详解(6个常见hook)
2021/04/28 Javascript
关于Numpy之repeat、tile的用法总结
2021/06/02 Python