小程序如何把嵌套循环作为对象传参

{
"totalPages": 1,
"list": [
{
"storeName": "FOLA测试店",
"state": "0",
"storeId": "28a502fac868471dad3e329f01428622",
"list": [
{
"normsId": "d10f811863a84b56a15581450f3be3d0 386490873c584bc9b487d4cee0afd399",
"parameterId": "6648b8d4c0094b68a6cab62d5e14c67d 486f2a76732f46c79731049ddf446602",
"orderId": "c3882e9b9a3544d2be3278109065ddf2",
"normsName": "颜色 尺寸",
"commodityId": "5eea10bede8442ba85feb0da0c6ab9d6",
"parameterName": "红色 L",
"storeId": "28a502fac868471dad3e329f01428622",
"userId": "oFP0b5IE_8I1lFh5RDo-e_U50ed8",
"commodityPrice": 19.9,
"url": "https://xcx.upal.cn/ymyc/upload/log/2018/9/sliver20180912171014214.jpg",
"number": 1,
"createBy": "oFP0b5IE_8I1lFh5RDo-e_U50ed8",
"state": "1",
"createName": "????",
"commodityName": "测试89",
"createDate": 1537168386000
},
......
]
}
],
"totalCounts": 1
}

数据格式是嵌套循环,通过两个 for 循环展示,通过wx:for-index 定义 index,同时给 radio 赋值 value,value由两个循环的自定义属性index,且把两个index串联起来,例如: 00、01等

<view class="goods-list">
  <radio-group bindchange="listenerRadioGroup">
    <block wx:for="{{lists}}" wx:key="{{item.id}}" wx:for-index="index">
      ......
      <view class="item" wx:for="{{item.list}}" wx:for-item="list" wx:for-index="index1" wx:key="{{list.commodityId}}">
        <radio value="{{ index + '' + index1 }}"></radio>
        ......
      </view>
    </block>
  </radio-group>
</view>
// 选择单选
  listenerRadioGroup: function(e) {
    //获取当前点击的值
    let index = e.detail.value
    // 通过index 拿到数值,作为lists 和 list 的下标
    let data = this.data.lists[index[0]].list[index[1]];
    console.log(data);
    var that = this
    that.setData({
      goods: JSON.stringify(data)
    })
  },

猜你喜欢

转载自blog.csdn.net/qq_36437172/article/details/82752495