位置: IT常识 - 正文

如何vue使用ant design Vue中的select组件实现下拉分页加载数据,并解决存在的一个问题。(ant desgin-vue)

编辑:rootadmin
如何vue使用ant design Vue中的select组件实现下拉分页加载数据,并解决存在的一个问题。     需求:拉下菜单中数据过多,200条以上,就会导致select组件卡死。所以需要使用滑动到底部使其分页加载

推荐整理分享如何vue使用ant design Vue中的select组件实现下拉分页加载数据,并解决存在的一个问题。(ant desgin-vue),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:antd of vue,antdv vue,ant+vue,antd of vue,vue-ant,vue+antd,vue+antd,vue+antd,内容如对您有帮助,希望把文章链接给更多的朋友!

    可以借助 onPopupScroll 事件来监听下拉菜单的滚动事件,并判断当前是否已经到达了下拉菜单底部。具体可以通过以下步骤实现:

    1、在组件中绑定 @popupScroll回调事件

<a-select v-model="Form.governmentDirectors" @popupScroll="handlePopupScroll" > <a-select-option v-for="i in queryPageData" :value="i.id" :key="i.id" >{{ i.fullName }}</a-select-option > </a-select>

    2、在事件处理函数中,获取当前dom节点下滑的距离和滚动的位置。

handlePopupScroll(e) { const { target } = e; const { scrollTop, scrollHeight, clientHeight } = target; if (scrollTop + clientHeight == scrollHeight) { // 已经到达底部,触发分页逻辑 // todo 这里就可以触发加载下一页请求 具体函数根据当前业务需求来定 handlePagination(); }}

    分页逻辑例子:主要是页码++,数据追加(concat)

querypageFn() { const params = { page: this.querypage.page, size: this.querypage.size } queryListPage(params).then((res) => { if (res.data.code === 0) { if (res.data.data.length === 0) { return } else { this.queryPageData = this.queryPageData.concat(res.data.data) } } }) },    以上基本实现了使用a-select下拉框组件实现下拉分页加载数据,下面我们来说一下我遇到的坑。

当浏览器大小缩放为正常100%是没有问题的,可以正常下拉

如何vue使用ant design Vue中的select组件实现下拉分页加载数据,并解决存在的一个问题。(ant desgin-vue)

并且打印了scrollTop, scrollHeight, clientHeight三个属性的关系

    但是当浏览器缩放大小调整不是100%后 我们下拉框滑到底部,是不会继续请求的,这时控制台也没有报错,接口返回也没有什么问题。

console.log(scrollHeight, scrollTop, clientHeight, 'llslsl')

以下为打印的内容 分辨率为125%的时候,我们会发现 scrollTop发现偏差,导致条件等式不成立

    到现在我就彻底慌了,难道scrollTop属性和浏览器分辨率有关。查阅资料后还真的是。

可以这样解释:当分辨率发生变化时,页面的布局和尺寸也会发生相应的变化,导致元素的位置和大小产生了变化。而 e.target 是指触发事件的元素,在这个元素尺寸和位置发生变化之后,它的 scrollTop 属性自然也会受到影响。

具体地说,当元素的高度变大或缩小时,它的内容区域的总高度也会发生相应的变化,进而影响到 scrollTop 属性的值。例如,当元素高度变大时,它的内容就需要滚动更多的距离才能到达顶部,因此 scrollTop 属性的值也会相应地增大;而当元素高度变小时,则需要滚动更少的距离才能到达顶部,因此 scrollTop 属性的值也会相应地减小。

以上是分辨率变化对 e.target 的 scrollTop 属性的影响的一个粗略解释。需要注意的是,具体的影响还取决于其他因素,如CSS样式、页面结构等因素的变化。如果具体情况下需要深入了解 e.target 的 scrollTop 属性是如何受到影响的,可以通过调试工具等手段进行进一步的排查和分析。

    说一下解决方案吧,我发现无论怎么变大变小  scrollTop 的偏差都会在2以内。所以我们需要改一下if判断里面的判断方式。

if (scrollTop + 2 + offsetHeight >= scrollHeight) 

    以上我们手动给他把这个偏差加上2,并且把等式换为大于等于,我们就能完美解决此bug,我一开始以为是歪点子,现在总结之后发现这是一个合适解决方案哦!

本文链接地址:https://www.jiuchutong.com/zhishi/293776.html 转载请保留说明!

上一篇:云计算技术(ICT)课后习题答案(云计算技术是学什么的)

下一篇:【torch.nn.Parameter 】参数相关的介绍和使用

  • 华为手机如何省电设置方法(华为手机如何省电设置方法视频)

    华为手机如何省电设置方法(华为手机如何省电设置方法视频)

  • 什么是4合1的4800万像素(4合1是什么意思)

    什么是4合1的4800万像素(4合1是什么意思)

  • 微信双击头像抖动(微信双击头像抖音怎么弄)

    微信双击头像抖动(微信双击头像抖音怎么弄)

  • 电脑制作文件夹的步骤是什么(电脑制作文件夹怎么做)

    电脑制作文件夹的步骤是什么(电脑制作文件夹怎么做)

  • 知乎提问审核多久(知乎的提问要审核多久)

    知乎提问审核多久(知乎的提问要审核多久)

  • 手机自动升级怎么回事(手机自动升级对手机有影响吗)

    手机自动升级怎么回事(手机自动升级对手机有影响吗)

  • 此歌曲尚未跨设备同步(此歌曲尚未跨设什么歌)

    此歌曲尚未跨设备同步(此歌曲尚未跨设什么歌)

  • 黑鲨手机充电充不进(黑鲨手机充电充不进去,还越充越少)

    黑鲨手机充电充不进(黑鲨手机充电充不进去,还越充越少)

  •  华为mate30怎么返回上一步(华为mate30怎么恢复出厂设置)

    华为mate30怎么返回上一步(华为mate30怎么恢复出厂设置)

  • 为什么word打字下面有波浪线(为什么word打字中间间隔很大)

    为什么word打字下面有波浪线(为什么word打字中间间隔很大)

  • 微信怎么设置对方忙(微信怎么设置对方发信息过来看不到)

    微信怎么设置对方忙(微信怎么设置对方发信息过来看不到)

  • 微信咋样发空白信息(微信如何发空白)

    微信咋样发空白信息(微信如何发空白)

  • 苹果怎么关闭查看程序使用电量情况(苹果怎么关闭查找通知)

    苹果怎么关闭查看程序使用电量情况(苹果怎么关闭查找通知)

  • ps下载不了怎么办(ps下载不下来)

    ps下载不了怎么办(ps下载不下来)

  • fhd屏和ips屏的区别(ips屏和fhd屏哪个好)

    fhd屏和ips屏的区别(ips屏和fhd屏哪个好)

  • 快手作品排列怎么设置(快手作品排列怎么调整)

    快手作品排列怎么设置(快手作品排列怎么调整)

  • vivo手机mm安全中心是什么(vivo手机安全中心官网)

    vivo手机mm安全中心是什么(vivo手机安全中心官网)

  • vivo怎么改手机型号(vivo怎么改手机下面的三个按键?)

    vivo怎么改手机型号(vivo怎么改手机下面的三个按键?)

  • 苹果11手机电池容量(苹果11手机电池原装多少钱)

    苹果11手机电池容量(苹果11手机电池原装多少钱)

  • 腾讯视频能用手机号登录吗(腾讯视频能用手机号登录会员吗)

    腾讯视频能用手机号登录吗(腾讯视频能用手机号登录会员吗)

  • 苹果7充电器电流是多少(苹果充电器电人怎么回事)

    苹果7充电器电流是多少(苹果充电器电人怎么回事)

  • 苹果耳机坏了能修吗(苹果耳机坏了能换吗)

    苹果耳机坏了能修吗(苹果耳机坏了能换吗)

  • 照片时间怎么设置方法(照片如何设置时间)

    照片时间怎么设置方法(照片如何设置时间)

  • 电脑指纹传感器在哪(电脑指纹传感器坏了怎么办)

    电脑指纹传感器在哪(电脑指纹传感器坏了怎么办)

  • 2010excel照相机功能(excel2016 照相机)

    2010excel照相机功能(excel2016 照相机)

  • 手机拆过机有什么影响(手机拆过机还能保修吗)

    手机拆过机有什么影响(手机拆过机还能保修吗)

  • BIOS设置教程:疑难BIOS设置选项详解(bios设置教程视频)

    BIOS设置教程:疑难BIOS设置选项详解(bios设置教程视频)

  • silent.exe - silent是什么进程  有什么用

    silent.exe - silent是什么进程 有什么用

  • 企业为员工缴纳公积金的通知
  • 增值税应纳税额的计算
  • 牲畜资产科目包括哪些
  • 增值税电子普通发票怎么作废
  • 主税零申报附加税怎样申报
  • 清算期间作为纳税年度
  • 税务登记财务负责人可以是法人吗
  • 发票抬头类型怎么选 个人不能报销吗
  • 小规模纳税人怎样报税
  • 个人所得税税前扣除是什么意思
  • 经济合同
  • 农业合作社预付款怎么算
  • 应付职工薪酬的一级科目
  • 开给天猫的服务费分录如何做
  • 一次性工伤医疗补助金和一次性伤残补助金
  • 租车没有发票怎么入账
  • 利润表中所得税费用为负数是什么意思
  • 主营业务税金及附加包括印花税吗
  • 车辆租赁的增值税率
  • 2020年最新增值税租车费
  • 机械租赁费如何开
  • 固定资产进项发票怎么开
  • 外籍个税起征点
  • 商业承兑汇票申请流程
  • 交通定额发票税率
  • 应交税费待抵扣进项税额是什么科目
  • 企业减免企业所得税怎么算
  • 待摊费用和预提费用的区别
  • wifi网速太慢了怎么回事
  • 企业所得税预缴申报
  • word的拼写检查总是变成法语
  • php字符串函数大全
  • php的数组函数
  • fp是什么文件
  • 增值税普通发票和电子普通发票的区别
  • 车间装修预算表
  • named-config
  • lvm部署的命令
  • 海外佣金需要交税吗
  • 国有资产无偿划转的会计处理
  • 无实物的固定资产有哪些
  • 逐步结转分步法的步骤
  • 深入理解linux内核
  • 库存现金怎么算
  • 计提坏账准备和确认坏账损失
  • 房地产企业建成后先出租的房地产
  • 现金流量表算财务报表吗
  • 注册资本金收到之后可以转挂往来款吗
  • 应收账款的账面价值是什么
  • 收到残保金退税现金流
  • 购买空调报销写什么科目的
  • 资本公积金转增股本是利好吗
  • 增值税发票打印机怎么调整打印位置
  • 转销无法收回的应收账款会计分录
  • 合同已执行但有错误怎么办
  • 应收账款贷方余额应与什么科目合并后填入报表
  • 外币应收账款汇兑损失计入财务费用吗
  • 房地产企业什么时候停止预缴增值税
  • 编制记账凭证的依据
  • win10语言栏没有
  • dmidecode命令
  • 硬盘安装在机箱内,属于主机的组成部分
  • ubuntu开机黑屏无法进入登录界面
  • windows开始按钮点了没用
  • jquery如何赋值
  • dos命令批处理
  • unity3d入门教程中文图解
  • ruby 递归
  • 批处理基础知识
  • ubuntu14重置密码
  • javascript中的this属性
  • json对象转化为list
  • Android SQLite, KopDB 框架学习1——使用
  • unity3drpg游戏
  • 广西税务局客服电话时间
  • 什么是财务审计
  • 上饶二手房契税
  • 公司自有房产出租缴税
  • 公司完税证明去哪里打
  • 云南省2021年退休金计发基数
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设