微信小程序bindtap与catchtap的区别详解【阻止view里层事件执行导致外层view事件也执行】

微信小程序bindtap与catchtap的区别详解

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

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

例如:

外层使用bindtap里层使用bindtap

里层使用bindtap不会阻止冒泡事件向上冒泡,点击里层的方法pruduct_add或pruduct_clear的时候执行了但是它会执行最外层的一个toProductDetail方法,因为这个view包裹着里面的两个方法,所以导致执行里面的外面的也会执行。

微信小程序bindtap与catchtap的区别详解【阻止view里层事件执行导致外层view事件也执行】_第1张图片

执行了最外层的toProductDetail

微信小程序bindtap与catchtap的区别详解【阻止view里层事件执行导致外层view事件也执行】_第2张图片

外层使用bindtap里层使用catchtap

当我们里层使用catchtap的时候就不会出现这种情况,里层使用catchtap可以阻止冒泡事件向上冒泡。

微信小程序bindtap与catchtap的区别详解【阻止view里层事件执行导致外层view事件也执行】_第3张图片

你可能感兴趣的:(微信小程序学习笔记,微信小程序,小程序,前端)