微信小程序中的事件

事件 说明
bindtap
bindload 当图片载入完毕时触发,event.detail =

bind事件绑定不会阻止冒泡事件向上冒泡,catch事件绑定可以阻止冒泡事件向上冒泡。

如bindtap,当用户点击该组件的时候会在该页面对应的Page中找到相应的事件处理函数。

从基础库版本2.4.4开始,支持使用WXS函数绑定事件,WXS函数接受2个参数,第一个是event,在原有的event的基础上加了event.instance对象,第二个参数是ownerInstance,和event.instance一样是一个ComponentDescriptor对象。

dataset

在组件节点中可以附加一些自定义数据。这样,在事件中可以获取这些自定义的节点数据,用于事件的逻辑处理。
在 WXML 中,这些自定义数据以 data- 开头,多个单词由连字符 - 连接。这种写法中,连字符写法会转换成驼峰写法,而大写字符会自动转成小写字符。

mark

在基础库版本 2.7.1 以上,可以使用 mark 来识别具体触发事件的 target 节点。此外, mark 还可以用于承载一些自定义数据(类似于 dataset )。
当事件触发时,事件冒泡路径上所有的 mark 会被合并,并返回给事件回调函数。(即使事件不是冒泡事件,也会 mark 。)

dataset 和 mark 的区别:

mark 和 dataset 很相似,主要区别在于: mark 会包含从触发事件的节点到根节点上所有的 mark: 属性值;而 dataset 仅包含一个节点的 data- 属性值。
细节注意事项:

  1. 如果存在同名的 mark ,父节点的 mark 会被子节点覆盖。
  2. 在自定义组件中接收事件时, mark 不包含自定义组件外的节点的 mark 。
  3. 不同于 dataset ,节点的 mark 不会做连字符和大小写转换。

官方文档:https://developers.weixin.qq.com/miniprogram/dev/framework/view/wxml/event.html

posted on 2019-11-11 14:25  cag2050  阅读(620)  评论(0编辑  收藏  举报

导航