element-ui的表格筛选(后端筛选)

本文介绍了如何在ElementUI中使用el-table实现表格的多条件筛选,包括单选选项和从字典数据获取筛选列表。同时,也讨论了如何处理筛选列表的滚动效果以及CSS样式应用的问题。
摘要由CSDN通过智能技术生成
<template>
    <div class="app-container">
        <div>
            <el-table :data="tableList" @filter-change="filterChange">
                <el-table-column 
                    label="手机品牌" 
                    align="center" 
                    prop="phoneBrand"
                    :filters="phoneBrandList"
                    :column-key="columnKey[0]"
                    :filter-multiple="false" />
                <el-table-column 
                    label="发布时间" 
                    align="center" 
                    prop="time"
                    :filters="timeList"
                    :column-key="columnKey[1]"
                    :filter-multiple="false" />
            </el-table>
        </div>
    </div>
</template>
<script>
    export default {
        name: "phone",
        data(){
            return {
                //表格数据
                tableList:[],
                //表头筛选
                columnKey:['phoneBrand1','time1'],
                //筛选表头列表
                phoneBrandList:[
                    {
                        text: "苹果",
                        value: "苹果"
                    },{
                        text: "华为",
                        value: "华为"
                    }],
                timeList:[{
                    text:"2013",
                    value:"2013"
                },{
                    text:"2014",
                    value:"2014"
                }]
            }
        },
        created(){
            //获取到表格数据
            this.getList();
        },
        methods: {
            filterChange(filters){
                for(const key in filters){
                    if(key == "phoneBrand1"){
                        let phoneBrand2 = filters['phoneBrand1'][0];
                    }else if(key == "time1"){
                        let time2 = filters['time1'][0];
                    }
                }
                //带上筛选条件获取表格数据
                this.getList();
            }
        }
    }
</script>

以上为element-ui表格多条件筛选筛选,:filter-multiple="false"表示是否为单选

如果筛选列表从若依的字典中获取,则列表获取方法为:

//获取字典数据转为筛选列表
this.getDicts("字典名").then(response => {
    let list = response.data;
    for(let i=0;i<list.length;i++){
        this.筛选列表.push({
            text:list[i].dictLabel,
            value:list[i].dictValue
        });
    }
}

若果要将筛选列表进行滚动,则设置css:

<style lang="scss" scoped>
    ::v-deep .el-table-filter__list{
        max-height: 500px;
        overflow-y: auto;
    }
</style>

类名按自己的实际情况来写

注:如果设置的css在页面上设置生效,但是在代码中不生效

解决办法(但是不推荐)

//全局生效
<style lang="scss">
    .el-table-filter__list{
        max-height: 500px;
        overflow-y: auto;
    }
</style>

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Flask是一种Python Web框架,而Element-UI则是一个Vue.jsUI库。它们在Web开发中起到不同的作用。 Flask作为一个轻量级的Web框架,适合用于快速开发小型的网站或应用。它提供了简洁的API和灵活的扩展机制,使开发者能够高效地构建出符合需求的Web应用。Flask采用了MVC(模型-视图-控制器)的设计模式,使代码的组织和维护变得更加容易。Flask还支持RESTful API的开发,使得我们可以基于HTTP协议来设计和实现各种资源的CRUD操作。总的来说,Flask是一个功能强大且易于学习和使用的Web框架,适用于中小规模的Web开发项目。 而Element-UI是一个基于Vue.js的组件库,它提供了丰富的UI组件,以及一些常用的工具函数,帮助开发者构建出美观且易用的前端界面。Element-UI中包含了各种常见的UI组件,例如按钮、表格、表单、弹窗等等,这些组件都经过了精心设计和开发,具有统一的样式和交互效果。Element-UI还提供了一些高级的功能,例如表单校验、数据加载、数据筛选等等,极大地提升了开发效率和用户体验。通过使用Element-UI,我们可以快速构建出具有一致性和美观性的用户界面,同时也提升了前端开发的效率。 综上所述,Flask和Element-UI在Web开发中扮演着不同的角色。Flask作为后端框架负责处理数据的逻辑和业务逻辑,而Element-UI作为前端组件库则主要负责构建用户界面和提供友好的用户交互。通过Flask和Element-UI的结合,我们可以实现一个完整的Web应用,既具备了良好的设计和易用性,又具备了高效的开发和可拓展性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值