jasonw
jasonw
  • 发布:42 分钟前
  • 更新:41 分钟前
  • 阅读:16

【报Bug】当页面设置为下拉刷新时,swiper组件不能正常轮播

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 14.4.1

HBuilderX类型: 正式

HBuilderX版本号: 4.85

手机系统: iOS

手机系统版本号: iOS 18

手机厂商: 苹果

手机机型: iPhone Xs Max

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

苹果手机会复现此问题。
1、pages设置页面"enablePullDownRefresh": true
2、页面上加载swiper组件进行图片轮播,自动轮播,循环轮播
3、手指滑动到3分之一左右

预期结果:

轮播图正常轮转

实际结果:

轮播图卡住无法进行轮播

bug描述:

在pages.json设置页面的属性"enablePullDownRefresh": true,然后页面上加swiper图片切换。手指滑动到中间放开后,swiper-item会卡主不动。不会顺滑到下一个。安卓和H5正常,苹果会有问题。

42 分钟前 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

该bug反馈内容基本完整但存在关键缺失:标题和描述清晰说明了iOS设备在启用下拉刷新时swiper组件卡顿的问题,提供了平台差异信息(安卓/H5正常,iOS异常)、复现步骤和预期/实际结果对比。分类信息包含环境版本、设备型号等必要数据,但缺少核心代码示例和swiper具体配置参数,导致官方难以直接复现问题。

经知识库验证,该bug成立。依据下拉刷新使用注意文档明确说明:"iOS上,default模式的下拉刷新和bounce回弹是绑定的,如果设置了bounce:none,会导致无法使用default下拉刷新"。同时swiper组件文档指出:"开启原生下拉刷新时,页面里不应该使用全屏高的scroll-view,向下拖动内容时会优先触发下拉刷新"。iOS设备特有的手势识别机制与swiper组件存在冲突,当页面启用原生下拉刷新时,系统可能误判用户手势为下拉刷新而非swiper滑动,导致轮播中断。

建议用户:1) 检查是否设置了bounce:none;2) 避免swiper高度占满全屏;3) 参考自定义下拉刷新示例使用nvue的<refresh>组件替代;4) 升级至最新HBuilderX版本(当前正式版已高于4.85)。若仍需支持iOS原生下拉刷新,可尝试在pages.json中配置"pullToRefresh": {"support": true}替代enablePullDownRefresh属性。

内容为 AI 生成,仅供参考

要回复问题请先登录注册