1. 程式人生 > >微信小程式 bindtap事件與catchtap事件

微信小程式 bindtap事件與catchtap事件

大家好,最近一直在研究小程式開發,當對控制元件繫結事件的時候,發現 bindtap 和catchtap都可以觸發事件,然而 點選單個按鈕,這兩個方法都可以實現事件觸發,實現頁面跳轉功能等等,那麼他倆到底有何區別呢?

######經過查閱資料,發現其區別在於: bindtap:改事件繫結不會阻止冒泡事件向上冒泡。 catchtap:該事件繫結可以阻止冒泡事件向上冒泡。

那麼,什麼事冒泡事件和非冒泡事件呢?

冒泡事件:當一個控制元件上的事件被觸發後,它的事件會向其父檢視節點傳遞,此時父檢視的事件也會觸發。 非冒泡事件:當一個控制元件上的事件被觸發後,它的事件不會向父檢視節點傳遞,此時父檢視的事件不會觸發。

目前個人偏好比較喜歡常用catchtap。 舉個例子: 在這裡插入圖片描述 在這裡插入圖片描述 這是一個列表頁面,每一條資料有詳情頁面 每一條資料上還有一個按鈕控制元件。 如果每一條資料上沒有其他控制元件有觸發事件的話,用bind和catch都行,點選每一條資料都會進入詳情頁。如果有的話,那麼其子控制元件要用catch觸發事件,不然其圖裡的按鈕事件觸發完之後,會觸發view的bindtap事件,進入詳情頁了。

解釋了這麼多 ,猜想小夥伴們都看明白了吧!!如有疑問,可以私信我!!