微信小程序 获取wx:for 中下标的方法
首先 要在wx:for 那个view里面写上wx:for-index=“名字自定义”
那么这里 我的现在下标名字就是goodIndex
<view wx:for="{{goodsList}}" wx:key="key" wx:for-index="goodIndex">
然后在你触发事件的 地方 绑定data
<view bindtap="deleteGood" data-goodId='{{item.goodId}}' data-index='{{goodIndex}}'>
我这里绑定了两个data 你需要几个就绑定几个
说明一下:
-
首先这个goodIndex 就是你在上面 for 里面定义的index
-
item.goodId 这个就是我的goodsList里面的属性 goodId 因为我这里需要获取到我点击的 good的ID
-
你也可以绑定其他的data 如果你需要name那么你可以给触发事件的这个view里写
data-xxxx=’{{item.name}}’(其中data后面的这个xxxx是你自己命名的,{}里面的name是你for循环里面的属性) -
这样 当你点击的时候 就把data绑定的值传入了 我这里传入了 item.goodId goodIndex
js
deleteGood:async function(e){
var goodId = e.currentTarget.dataset
console.log(e.currentTarget.dataset);
}
说明
- deleteGood是触发的事件
- e.currentTarget.dataset. 就是你获取到你页面所绑定的值 我这里绑定了两个显示结果如下:
这个goodid index 就是你绑定的名字 名字是你自己命名的那个data-xxxx 中的 xxxx
然后你需要goodid 那么你就直接后面点出来就好了
var goodId = e.currentTarget.dataset.goodid
console.log(goodId);
结果如下
这个就是我从xml里面点击的good的goodid 。