html52.com
我爱小程序-开发者交流社区

一个页面多个swiper时有bug

问题模块 框架类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
API和组件 小程序 swiper 6.6.3 1.9.1

你想反馈一个 Bug 还是 提一个需求?

bug


如果是 Bug:

一个页面多个swiper时(如在wxml中通过循环动态生成),如果划动某个1次swiper后,用setData()更新循环变量后第一个swiper(新增项)的current值不是0,而是1。


* Bug 表现是什么?预期表现是什么?

导致如果新增的这个swiper中只有一项,那么页面中这个位置将是空白(因为其current默认应该为0)


* 如何复现?

  1. 通过循环生成swiper,例循环变量为数组a

  2. 页面加载完成后,划动某一个swiper到第二项

  3. 向数组a的第一项前面添加一项

  4. 用this.setData()更新这个变量

  5. 查看页面(发现新增的swiper里面没有内容)

  6. 调试器中查看wxml,发现该swiper内容正确,但被设置了默认的current为1。 注: 如下,在wxml中给swiper设置上current="0"无效:

    <swiper current="{{0}}">


* 提供一个最简复现 Demo

目前没有,我想开发人员一看应该就明白了。有必要的话,可以与我联系,微信号:walt423454


网友回复

WALT:

没有人知道吗?

这个问题目前我只能重新刷新整个页面数据来解决,页面有明显抖动。

WALT:

更新数据后如何重置current?

赵子龙:

swiper的current是动态更新的,所以你写死0没用,你更新数据的时候重新设置current为0就行了,

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付