关于picker组件的疑问
发布于 5 年前 作者 liyi 12375 次浏览 来自 问答
  • 需求的场景描述(希望解决的问题)

大部分的场景中,我们的range都是类似于如下结构:

[

   {

        value:‘id_card’,

        name:‘身份证’

    },

    …

];

name是我们要展示的文字。

value是最终要提交的数据。

1,该种场景下,picker的value属性,却只能保存range的下标,实际需求为objectArray的value值,这样的场景如何处理呢?

2,range的objectArray来自于后端接口,已知picker的默认值为’id_card’,但并不知道其下标的情况下,如何赋值默认值?

  • 希望提供的能力

希望可以自定义picker的value属性,类似于range-key这样的设置。

picker更像是有大量数据的radio,是否可以提供radio一样的处理方式。

3 回复

<view class=“weui-cell__bd”>

<picker range-key=‘name’ name=“idType” bindchange=“idTypeChange” value="{{ form.idType}}" range="{{ IDTYPE }}">

<view wx:for="{{IDTYPE}}">

<view class=“weui-select weui-select_in-select-after” wx:if="{{item.name == form.idType}}"> {{ item.desc }} </view>

</view>

</picker>

</view>

idTypeChange(e){

const IDTYPE = this.data.IDTYPE;

this.setData({

‘form.idType’: IDTYPE[e.detail.value].name

});

// this.pickerChange(‘idType’, );

},

用了列表加条件渲染,给大家提供点思路吧。

rangeList[e.detail.value].value不是可以取到吗

回到顶部