1.事件绑定方式
方式一:bind:事件名 例如 <view bind:tap="handleName"></view>
方式二:bind事件名 例如 <view bindtap="handleName"></view>
2.事件常用类型
微信小程序中有许多的事件类型,常用的包括以下几种:
1.bindtap:点击事件,当用户点击该元素时触发
2.bindlongtap:长按事件,当用户长按该元素时触发
3.bindinput:输入事件,当用户输入内容时触发
4.bindscrolltolower:滚动到底部时间,当列表滚动到底部时触发
5.bindchange:选择器改变事件,当用户选择了下拉框或者滑动选择器时触发
3.事件处理函数
写到.js文件中,在文件中需要调用小程序提供的page方法来注册小程序的页面,我们可以直接在page方法中创建事件处理函数
4.事件分类
冒泡事件
当组件的事件被触发之后,该事件会向父节点传递
bind绑定的事件,会触发事件冒泡
非冒泡事件
当组件的事件被触发后,该事件不会向父节点传递
catch绑定的事件,可以阻止事件冒泡
5.事件传参
在触发事件时,将一些数据作为参数传递刚给事件处理函数的过程,就是事件传参
1.data-*
在组件上通过 “data-*”的方式,其中*就是自定义的属性
例如<view data-id = "100” bindtap="hander" />
注意事项
1.其中event.target是指事件触发者,event.currentTarget是指事件绑定者
2.使用data-传递参数时,多个单词由-连接,字符写法都会转化为驼峰写法
3.使用data-传递参数时,而大写字符会自动转化为小写字符
2.mark标记传递参数
在组件中使用mark:自定义属性的方式将数据传递给事件处理函数
例如<view mark:id="100" bindtap="handler">
注意事项
mark包含从触发事件的节点到根节点上所有的mark:属性值