时间:2021-05-28
网上大部分都可以增加筛选功能,但没有找到下列这种情况。
若表头数据较多,而表头是自己通过v-for循环产生,这种情况怎么给虚拟dom添加筛选规则。
<el-table-column v-for="item in tableHead" :key="item.id" :prop="item.id" :label="item.label" :filters="item.filter" :filter-method="item.filter && filterHandler">列表头是通过v-for循环遍历出来的数据
如何添加规则内容
首先,element提供了filters,filter-method两个属性,一个是写规则的内容,一个是写的方法。
this.tableHead = [ {id: '1', label: xxx}, {id: '2', label: xxx, filter: []}, {id: '3', label: xxx, filter: []}, {id: '4', label: xxx}, {id: '5', label: xxx}, {id: '6', label: xxx, filter: []} ]只需要在要添加规则的上面加上filter这个key值。
filter里面的内容要按照element ui 上面的格式塞进去
所以只能用方法来找到相应的id然后再处理。
规则的内容是和列表内容有关系,而一般情况下列表的内容也是从后端数据拿到的。所以要对规则的内容进行处理。
this.tableData.forEach((item) => { filterList.push({ text: item.xxx, value: item.yyy }) })这样操作肯定会有重复的text和value,所以需要去重。
去重方法:
得到最终的规则内容:
filterList = this.uniqArrObject(filterList)规则方法
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
element-ui默认的table组件支持的表头筛选(过滤)是比较简单的,只支持数组的方式,单选或多选的形式,但有时候我们喜欢支持输入框形式(其实感觉有点扯淡
本文介绍了element-ui中Table表格省市区合并单元格的方法实现,分享给大家,具体如下:效果如图代码如下:查询{{scope.row.remake}}{
前言elementui是一个非常不错的vue的UI框架,element对table进行了封装,简化了vue对表格的渲染。在开发vue框架项目时,引入elemen
本文介绍了vue项目中使用element-ui的Upload上传组件的示例,分享给大家,具体如下:确定其中importFileUrl是后台接口,upLoadDa
前言elementui是一个非常不错的vue的UI框架,element对table进行了封装,简化了vue对表格的渲染。elementui表格中有一个功能是展开