iview的表格添加筛选功能需要注意的问题

这篇具有很好参考价值的文章主要介绍了iview的表格添加筛选功能需要注意的问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

给table的某列添加筛选功能

table中通过给columns数据的项,设置 filters,可进行筛选,filters 接收一个数组。

然后再指定一个筛选函数 filterMethod 才可以进行筛选,filterMethod 传入两个参数valuerow

如果指定 filterMultiple: false,则只能单选,默认为多选。

注意,筛选并不会影响到表格的源数据 data

基础示例

<template>
    <Table border :columns="columns" :data="data"></Table>
</template>
<script>
    export default {
        data () {
            return {
                columns: [
                    {
                        title: '名称',
                        key: 'name'
                    },
                    {
                        title: '年龄',
                        key: 'age',
                        filters: [
                            {
                                label: '大于25',
                                value: 1
                            },
                            {
                                label: '小于25',
                                value: 2
                            }
                        ],
                        filterMultiple: false,
                        filterMethod (value, row) {
                            if (value === 1) {
                                return row.age > 25;
                            } else if (value === 2) {
                                return row.age < 25;
                            }
                        }
                    },
                    {
                        title: '地址',
                        key: 'address',
                        filters: [
                            {
                                label: '北京',
                                value: '北京'
                            },
                            {
                                label: '上海',
                                value: '上海'
                            },
                            {
                                label: '四川',
                                value: '四川'
                            }
                        ],
                        filterMethod (value, row) {
                            return row.address.indexOf(value) > -1;
                        }
                    }
                ],
                data: [
                    {
                        name: '张三',
                        age: 10,
                        address: '四川',
                    },
                    {
                        name: '李四',
                        age: 25,
                        address: '上海',
                    },
                    {
                        name: '王五',
                        age: 35,
                        address: '北京',
                    },
                    {
                        name: '秀豆',
                        age: 27,
                        address: '四川',
                    }
                ],
            }
        }
    }
</script>

iview的表格添加筛选功能需要注意的问题,vue,view design,javascript,前端,iview

特殊情况改造

filters中的数据需要动态获取

filters中的内容需要从后端接口中获取,如果我们直接把从接口中获取到的数据赋值给filters的话,筛选不会生效。
错误示例

{
    title: '年龄',
    key: 'age',
    filters: this.filters, // 从接口返回的数据
    filterMultiple: false,
    filterMethod (value, row) {
        // ...
    }
},

正确示例

// 伪代码
const res = await this.$axois(...); // 获取对应接口数据
this.filters = res;
this.columns[1].filters = this.filters; // 当前把需要的数据赋值给columns

filters中的数据过多,导致超出了屏幕内容以外的区域

iview的表格添加筛选功能需要注意的问题,vue,view design,javascript,前端,iview
这种情况怎么办?可以会想没法用了,得自己重新写个了,但转念一想,这是css样式问题,我们可以检查对应元素,通过javascript拿到指定元素,然后去修改元素的相关样式啊。
解决方法

// 接上面的示例,当filters中的数据从接口中获取到后,我们`f12`拿到指定元素,修改它的高度等属性即可。
this.$nextTick(() => {
  if (this.filters.length) {
    let listDom = document.querySelector(".main-ui-table-filter-list-item");
    listDom.style.height = "400px";
    listDom.style.overflow = "auto";
  }
})

修改后的样式就没撒问题了iview的表格添加筛选功能需要注意的问题,vue,view design,javascript,前端,iview文章来源地址https://www.toymoban.com/news/detail-602643.html

到了这里,关于iview的表格添加筛选功能需要注意的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue3 antd项目实战——table表格的自定义筛选【纯前端filters过滤、自定义筛选table表格数据】

    文章内容 文章链接 vue3 antd table 表格的基础搭建 https://blog.csdn.net/XSL_HR/article/details/128072745 ant design vue 组件库的引入与使用 https://blog.csdn.net/XSL_HR/article/details/127396384 在 后台管理系统 中,我们需要 对大量的数据进行展示、处理和操作 ,table表格也因此无处不在。而 ant design

    2024年01月25日
    浏览(42)
  • 数电中需要注意的问题

    加法器 { ①和: 1 , 2 , 4 , 7 ②向高位的进位: 3 , 5 , 6 , 7 加法器quad begin{cases} ①和:1,2,4,7\\\\ ②向高位的进位:3,5,6,7 end{cases} 加法器 { ① 和: 1 , 2 , 4 , 7 ② 向高位的进位: 3 , 5 , 6 , 7 ​ 减法器 { ①差: 1 , 2 , 4 , 7 ②向高位的借位: 1 , 2 , 3 , 7 减法器quad begin{cases} ①差:

    2024年02月03日
    浏览(25)
  • View UI Plus (iview)表格单选实现教程

    View UI Plus 是 View Design 设计体系中基于 Vue.js 3 的一套 UI 组件库,主要用于企业级中后台系统 View UI,即原先的 iView,从 2019 年 10 月起正式更名为 View UI,并使用全新的 Logo View UI Plus 实现表格单选,这里需要用到 render 函数,实现的思路是使用render函数自定义表格列为单选框或

    2024年02月09日
    浏览(24)
  • 修改iview的表格table展开的默认icon和样式

    修改前 修改后 修改内容

    2024年01月19日
    浏览(34)
  • 鸿蒙APP上线需要注意的问题

    在将鸿蒙(HarmonyOS)应用上线的过程中,开发者需要注意一系列问题,以确保应用能够成功发布并在用户设备上正常运行。以下是上线过程中需要注意的一些关键问题,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 1.鸿蒙版本

    2024年02月02日
    浏览(30)
  • 修改Pom文件需要注意的问题

    1.从远程nuxaus拉不回来个别包该如何解决 进入仓库目录下,把该包的目录删除了,重新拉 rm -r 包目录 如果还是不行,可能是idea内存不够,尝试关闭暂时不用但是已经打开的项目,减少内存使用,删除包目录重试 2.删除某些依赖后找不到对应的文件 先到对应报错的尝试optio

    2023年04月12日
    浏览(25)
  • 仿抖音开发需要注意的问题

    一、版权问题 仿抖音开发需要注意版权问题,包括内容的版权和软件的版权。在开发的过程中,不要直接抄袭他人的作品,应该注重保护知识产权。 二、安全性问题 仿抖音开发需要重视应用的安全性问题,避免应用在使用过程中发生安全漏洞,导致用户个人信息泄露等问题

    2024年02月04日
    浏览(38)
  • 手机APP测试需要注意的问题

    1、前言 APP测试是一个广泛的概念,根据每个APP的应用场景不一样,测试的方向也略微的不同,在测试过程中需要灵活应用自身所知的测试手段。手机不同的功能对应着 2、安装测试 软件在不同操作系统(Android系统和IOS系统)上是否正常安装 软件在不同版本的操作系统(如

    2024年02月04日
    浏览(37)
  • 【golang】使用通道时需要注意的一些问题

    Go 1.20 Windows 11 1.定义通道变量: 2.通道遵循FIFO先入先出规则,可以保证元素的顺序 3.通道是并发安全的,不会因多个协程的同时写入而发生数据错乱 下面的代码例子会经常出现调用 display 函数,这是我自己定义的一个函数,主要用于打印信息,代码如下: 为了减少代码冗余

    2024年02月12日
    浏览(83)
  • iview的表格行内编辑,input和select组件使用方向键切换输入

    如果表格中的输入框和下拉框需要实现方向键切换选择,效果如图: 使用的是 IView 的UI框架和 Vue2 ,核心是在输入框和下拉框上添加按键监听事件,监听按键对应方向应该要完成的操作,比如当前在 Name 列的第一行,按【向左键】的话,需要鼠标光标在第一行的 Address 列 f

    2024年02月13日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包