收藏
回答

picker默认值问题

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug picker 客户端 7.0.3 2.0.0

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


- 预期表现


- 复现路径


- 提供一个最简复现 Demo


问题一:

Page({
  data: {
    heightindex: 0,
    height:165,
    heightArray: [],
  },
  onLoad: function () {
    
    //处理身高
    var har=[];
    var hstart= 130;
    var hend = 220;
    for (var i = hstart; i < hend;i++){
      har.push(i);
    }
    this.setData({
      heightindex:8,
      heightArray: har,
      height: har[10]
    })
 
  }


html


<picker  class="item-right" bindchange="bindHeightChange" data-id='{{heightArray[heightindex].id}}' value="heightindex" range="{{heightArray}}">
    {{height}} CM
    </picker>

设置默认值heightindex=8,即身高是140,




显示正常,但点击触发picker弹框,默认选中的值 仍然是heightindex=0的值,而不是140





问题二:


picker的默认值为什么只能设置index呢,比如身高数组,一个人的默认升高假如是165,直接设置165就行,但为甚么要直接通过165所在的index设置呢,

回答关注问题邀请回答
收藏

3 个回答

  • Gssl
    Gssl
    02-18

    一个大柜子, 里面有很多小柜子, 装有不同草药. 现在因为这个小柜子装甘草我给这个柜子命名为甘草, 那么以后万一他放茯苓的时候, 就要表达为: 拿在甘草柜里面的茯苓.... 了....

    02-18
    有用 1
    回复
  • Z先生
    Z先生
    2019-04-14

    index写的确实有问题,已经改了,但问题是为什么picker只能设置index,这个很坑啊,

    2019-04-14
    有用
    回复
  • 天南地北
    天南地北
    2019-04-13

    组件里面的heightindex没解析出来吧,你没带{{}}

    至于为什么是使用下标设置而不是直接设置值,考虑过在数组里面只有下标是唯一的吗

    2019-04-13
    有用
    回复
登录 后发表内容