收藏
回答

swiper组件bug-滑动swiper后,swiper不能正常更新,显示为空白

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug swiper 工具 6.6.7 2.2.2

- 当前 Bug 的表现

滑动swiper后,用左下角菜单切换(高中A组/高中B组),swiper不能正常更新,显示为空白。

如果没有滑动过swiper,切换菜单,swiper则可以正常更新。



- 预期表现

不管有没有滑动过swiper,都可以正常通过左下角菜单切换。



- 复现路径

进入小程序后,滑动诗词卡片(swiper),点击左下角菜单,点击“高中B组”,卡片消失为空白。

如果没有滑动过卡片则不会出现这个问题。


最后一次编辑于  2018-08-07
回答关注问题邀请回答
收藏

1 个回答

  • 小程序技术专员-LastLeaf
    小程序技术专员-LastLeaf
    2018-08-07

    你好,这个问题通常是因为通过代码减少了 swiper-item 数量之后,current 值大于等于 swiper-item 总量的原因。这种情况下,请注意在代码中设置一下 swiper 的 current 值。

    2018-08-07
    赞同
    回复 12
    • 遐破
      遐破
      2018-08-07

      感谢你的回复!

      嗯我尝试设置了current的值为0,还是一样的...

      如果滑动过swiper,即使当前current值为0的时候,也还是会出现swiper为空白的情况,此时swiper-item的代码是正常出现的,就是页面不显示,检查发现swiper的值变为‘-1’。

      没有滑动过swiper时,随意切换组别(swiper-item总量改变),页面还是会正常显示。

      2018-08-07
      回复
    • 小程序技术专员-LastLeaf
      小程序技术专员-LastLeaf
      2018-08-07

      滑动过 swiper 之后就有可能会出现这个现象。比如:开始的时候有三个 item ,如果滑到最后一个,再使用 setData 改为两个 item ,就会出现这个状态。此时 setData current 值即可。

      2018-08-07
      回复
    • 遐破
      遐破
      2018-08-07回复小程序技术专员-LastLeaf

      嗯嗯,我确实是将current的值绑定到一个字段上

      再用setData设置的这个字段值为 0

      但是current的值还是会自动变为 -1 ....


      之前代码片段链接好像没加上去,现在补上来了

      2018-08-07
      回复
    • 小程序技术专员-LastLeaf
      小程序技术专员-LastLeaf
      2018-08-07

      看了代码片段。应该是因为你使用了 item-id 。这种情况下应该设置 current-item-id 而非 current 。

      2018-08-07
      回复
    • 遐破
      遐破
      2018-08-07回复小程序技术专员-LastLeaf

      原来如此...非常感谢!


      可是每次切换的第一个item-id是会变化的...不是“0”,我也不确定每次应该是多少...

      而我又需要item-id来告诉我现在的swiper-item对应我后台的哪一条数据...


      请问有什么好的方法吗?

      2018-08-07
      回复
    查看更多(7)