< view > < picker value = "{{index}}" range = "{{array}}" range-key = '{{key}}' > < view class = "picker" > 当前选择:{{array[index].key}} </ view > </ picker >
|
Page({ data: { array: [{ "hospitalName": "北京中医药大学附属护国寺中医医院", "hospitalId": 520, "areaId": 166 }, { "hospitalName": "深圳市南山医院", "hospitalId": 657, "areaId": 23 }, { "hospitalName": "上海市嘉定区南翔医院", "hospitalId": 416, "areaId": 167 }, { "hospitalName": "浙江大学附属第一医院", "hospitalId": 482, "areaId": 25 }], index:0, key: "hospitalName" } }) |
结果是根本显示不出来,测试发现key值根本没有传到{{array[index].key}},但是Index的值却传入了,请问这是怎么回事?
<view>
<picker
value=
"{{index}}"
range=
"{{array}}"
range-key='
{{key}}'
>
<view class=
"picker"
>
当前选择:{{array[index][key]}}
</view>
</picker>
</view>
把key用[]包起来,去掉 . 运算符,即可将Key值传入,正常显示。
你把data里面的key 改成单引号,把wxml里面range-key等号后面的单引号 改成双引号。至于显示的结果 需要通过调用bindchange事件来实现
你说的是这样改吗?
range-key的单双引号是不影响的,至于下面的Key的单引号,我就不知道为什么会这么用了。
代码片段:wechatide://minicode/mcwq1ZmW7tcG
嗯,我刚刚自己也试出来了,谢谢!
麻烦给个相关的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html),我们定位下问题
代码片段:wechatide://minicode/mcwq1ZmW7tcG