收藏
回答

picker-view-column 数据改变后没有跳到正确位置

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug picker-view-column 工具 7.0.4 2.7.4

- 当前 Bug 的表现(可附上截图)

改变picker-view-column的数据后,没有跳到索引位置,点击两次后会正常


- 预期表现

跳到索引位置


- 复现路径

点击代码片段的change, 第一次换成其他数据

点击第二次换回来,你会看到全部留在索引[0,0,0],其实数据是[9999,1,1]

点击第三次就正常了,这次和第二次用的数据是一样的


- 提供一个最简复现 Demo

https://developers.weixin.qq.com/s/8mzXtMmf7m9c



该问题已经解决,请看评论,留着后面的猿看看吧

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

2 个回答

  • 2019-07-11

    虽然没看懂是什么需求,可以这样修改

    https://developers.weixin.qq.com/s/68EslMmJ7V9p

    2019-07-11
    有用 1
    回复 5
    • 一介文夫
      一介文夫
      2019-07-11
      不是,是设置picker-view-column的数据后,数据没有更新到索引所在的位置,需要设置两次相同的数据才会正确显示,js部分是拿来演示的,我觉得是组件的问题,第一次没有刷新到
      2019-07-11
      回复
    • 2019-07-11回复一介文夫
      应该先更新数据,更新数据结束后再更新索引
      2019-07-11
      回复
    • 一介文夫
      一介文夫
      2019-07-11回复
      有道理,忘了这层,主要平时不是这样用的,感谢
      2019-07-11
      回复
    • 家hua🤪
      家hua🤪
      2020-09-30
      完美解决问题
      2020-09-30
      回复
    • 🔥乐乐🔥
      🔥乐乐🔥
      2021-05-02回复一介文夫
      请问是怎么解决的呢 怎么做到先更新数据 再更新索引的呢
      2021-05-02
      回复
  • 哔哔-mark
    哔哔-mark
    2020-03-21

    picker-view-column可变的情况就会导致value数组长度也跟随变化,导致取值对不上

    内置组件的value数组不是固定的,导致这种情况发生,这是组件问题

    如果在某个条件下隐藏一个picker-view-column 或多个 picker-view-column 这时候 picker-view 就无法正常取值

    建议 picker-view-column 增加 disabled 和show 属性

    <picker-view-column wx:if="{{info.ranges<=5}}">

              <view wx:for="{{minutes}}wx:for-index="idxwx:key="idxstyle="line-height: 50px;text-align:center;">{{item}}分</view>

            </picker-view-column>


    2020-03-21
    有用
    回复
登录 后发表内容