简单记录一下微信小程序绑定点击事件的方法以及传参,这里要说明一下,用过vue的都知道方法是写在methods里面的,但是小程序有点区别,page里面声明方法直接写在page里面,和onLoad同级别,没有methods,详细看代码片段2 ,但如果你用的是component的话,方法声明就需要写在methods里面了,详细看代码片段3;

在WXML文件页面这样写:bindtap就是绑定点击事件,和web端的click同一个意思,后面的clickItem就是你注册的点击事件方法,这里的参数传递和web端有区别,web端传递参数是这样clickItem(‘我是传递的参数’);小程序这样写:data-item=“我是传递的参数”,data-xxx,后面的xxx你可以自定义;

 <view 
	 bindtap="clickItem"
	 data-item="我是传递的参数" >
 </view>

在js文件里面这样写,然后来说怎么注册这个方法,并且取到我们传递的参数:data你传递过来的参数就在这里面,可以理解为web端传递的形参接收的,打印一下试试看,data.currentTarget.dataset.item打印出来就是我们传递的参数,你可以打开json按层级查找看看;

代码片段2

Page({
	onShow() {
		//我是页面显示时候触发的方法
	},

	clickItem(data) {
		//我是用户点击时触发的方法
		console.log(data);
		console.log(data.currentTarget.dataset.item);  //我是传递的参数
	},
})

代码片段3

Component({
	methods: {
		clickItem(data) {
			//我是用户点击时触发的方法
			console.log(data);
			console.log(data.currentTarget.dataset.item);  //我是传递的参数
		},
	}
})
Logo

前往低代码交流专区

更多推荐