微信小程序 bindtap 传参
//index.wxml
<view bindtap="changeIndex" data-src="我固定参数">
</view>
//index.js
page({
data:{
},
changeIndex(e){
console.log(e.currentTarget.dataset.src); //我是固定参数
}
});
可以看出 参数是通过给标签设置 data-参数名=“参数值” 自定义属性的方式 来传递的 例如想传递两个参数
//index.wxml
<view bindtap="changeIndex" data-src1="我固定参数1" data-src2="我是固定参数2" >
</view>
//index.js
page({
data:{
},
changeIndex(e){
console.log(e.currentTarget.dataset.src1); //我是固定参数1
console.log(e.currentTarget.dataset.src2); //我是固定参数2
}
});
如果需要传递动态的参数 例如遍历渲染时 想传递 index 给 changeIndex方法
//index.wxml
<view wx:for="{{lists}}" wx:for-index="index" wx:key="index" data-index="{{index}}" >
{{item.title}}
</view>
//index.js
page({
data:{
lists:[{title:'参数1',id:1},{title:'参数2',id:2}]
},
changeIndex(e){
console.log(e.currentTarget.dataset.index);
}
})