el表格头部拼装,filter+map的结合使用

49 篇文章 2 订阅
13 篇文章 0 订阅

一、场景

navicat查数据一样,select * from user;这样的数据,但因为是业务涉及修改数据表元数据,所以需要过滤离线的数据表元数据,然后保留在线表的字段拼接到列上。
在这里插入图片描述

二、代码

  • 先过滤筛选出id为null(即在线)的字段,然后拿到它的字段名,最后拼接(ELM-UI)el-table所需的columns
if(res.list.length === 0) {
              // 无数据时初始化头部列,过滤离线字段
              const arr = this.columnsList.filter(item => !item.id).map(e => {
                  return e.columnsCode
              })
              const columns = [{ type: 'index', prop: 'index', width: 80, label: '序号', align: 'center' }]
              arr.forEach(e => {
                columns.push({ label: e, prop: e, width: 120 })
              });
              this.columns = columns
              return false
            }

最后

就这样,随手记录一个写法\(^o^)/~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用element-ui表格的过滤功能时,可以通过设置`filterable`属性为`true`来启用过滤。同时需要设置`filters`属性来指定过滤选项,例如: ``` <el-table :data="tableData" :columns="tableColumns" :filterable="true" :filters="filters"> </el-table> ``` 其,`tableData`是要显示的表格数据,`tableColumns`是表格的列定义,`filters`是一个数组,用于指定过滤选项,例如: ``` data() { return { filters: [{ text: '男', value: 'male' }, { text: '女', value: 'female' }] } } ``` 在这个例子,我们定义了两个过滤选项:男和女。 同时,我们还需要为每列指定过滤方法,可以通过设置`filter-method`属性来指定。例如: ``` <el-table-column prop="gender" label="性别" :filters="filters" :filter-method="filterGender"> </el-table-column> ``` 在这个例子,我们为性别这一列指定了过滤方法`filterGender`。这个方法接受两个参数:`value`和`row`。其,`value`是当前列的值,`row`是当前行的数据。 在`filterGender`方法,我们需要返回一个布尔值,表示当前行是否满足过滤条件。例如: ``` methods: { filterGender(value, row) { return row.gender === value; } } ``` 在这个例子,我们判断当前行的性别是否等于过滤选项的值,如果相等则返回`true`,否则返回`false`。 这样,当用户选择一个过滤选项时,表格会自动调用对应的过滤方法,过滤出符合条件的行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值