微信小程序中的事件类型和事件绑定bind catch

187 阅读1分钟

常见的事件类型

事件分为冒泡事件和非冒泡事件:官方文档
1.冒泡事件:当一个组件上的事件被触发后,该事件会向父节点传递。
2.非冒泡事件:当一个组件上的事件被触发后,该事件不会向父节点传递。
除下表之外的其他组件自定义事件如无特殊声明都是非冒泡事件

  1. tap:手指触摸后马上离开,类似于click。
  2. touchstart:手指触摸动作开始。
  3. touchmove:手指触摸后移动。
  4. touchcancel:手指触摸动作被打断,如来电提醒,弹窗。
  5. touchend:手指触摸动作结束。
  6. longpress:手指触摸后,超过350ms再离开,如果指定了事件回调函数并触发了这个事件,tap事件将不被触发。
  7. touchforcechange:在支持 3D Touch 的 iPhone 设备,重按时会触发。
  8. touches:触摸事件,当前停留在屏幕中的触摸点信息的数组。
  9. changedTouches:触摸事件,当前变化的触摸点信息的数组。

事件绑定

1.bind绑定事件

bind绑定的事件无法阻止事件冒泡

  1. bind:事件名
  2. bind事件名
  <button bind:tap="onBindTapBtn" bindtap='bindTapBtn'>按钮</button>

2.catch绑定事件

catch绑定的事件可以阻止冒泡行为

  1. catch:事件名
  2. catch事件名
  <button catch:tap="onCatchTapBtn" catchtap="catchTapBtn">按钮</button>