摘要:微信小程序開發說實話還是有點糟心的,經過事件冒泡的坑之后,又遇到了長按事件必觸發點擊事件的實例代碼長按我觸發了觸發了效果解決方法后確定是小程序有意為之后,看了一下網上的解決方法,基本都是通過和重新判定和事件的,個人不是很喜歡。
微信小程序開發說實話還是有點糟心的,經過事件冒泡的坑之后,又遇到了長按事件(longtap)必觸發點擊事件(tap)的BUG
實例代碼wxml
js
Page({ data: { }, tap: function() { console.log("觸發了 tap") }, longtap: function () { console.log("觸發了 longtap") } })
效果
解決方法Google后確定是小程序有意(B)為(U)之(G)后,看了一下網上的解決方法,基本都是通過touchstart和touchend重新判定tap和longtap事件的,個人不是很喜歡。
看一下微信小程序的事件定義:
tap, 手指觸摸后馬上離開
longtap, 手指觸摸后,超過350ms再離開
也就是說,目前的觸發的順序是 longtap -> touchend -> tap
那么其實解決也很清晰了,簡單來說就是 加把鎖, 應用到上面的代碼上:
Page({ data: { lock: false }, tap: function() { //檢查鎖 if (this.data.lock) { return; } console.log("觸發了 tap") }, touchend: function() { if (this.data.lock) { //開鎖 setTimeout(() => { this.setData({ lock: false }); }, 100); } }, longtap: function () { //鎖住 this.setData({lock: true}); console.log("觸發了 longtap") } })
看一下效果
延伸大部分情況下,我們都是不需要在touchend中加鎖的,因為長按操作會觸發其他的異步操作,只要保證異步操作的最后把鎖解除了即可。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/83770.html
摘要:傳統的網頁編程采用的三劍客來實現,在微信小程序中同樣有三劍客。觀察者模式不難實現,重點是如何在微信小程序中搭配其特有的生命周期來使用。交互事件傳統的事件傳遞類型有冒泡型與捕獲型,微信小程序中自然也有。 本文由作者鄒永勝授權網易云社區發布。 簡介為了更好的展示我們即時通訊SDK強悍的能力,網易云信IM SDK微信小程序DEMO的開發就提上了日程。用產品的話說就是: 云信 IM 小程序 S...
摘要:詳情功能完善本文配套視頻地址開始前請把分支中的目錄導入微信開發工具這一節中,我們把詳情的其他功能完善起來下一篇分享返回列表。 詳情 - 功能完善 本文配套視頻地址:https://v.qq.com/x/page/f0555... 開始前請把 ch4-3 分支中的 code/ 目錄導入微信開發工具 這一節中,我們把詳情的其他功能完善起來:下一篇、 分享、 返回列表。 Step 1....
摘要:詳情功能完善本文配套視頻地址開始前請把分支中的目錄導入微信開發工具這一節中,我們把詳情的其他功能完善起來下一篇分享返回列表。 詳情 - 功能完善 本文配套視頻地址:https://v.qq.com/x/page/f0555... 開始前請把 ch4-3 分支中的 code/ 目錄導入微信開發工具 這一節中,我們把詳情的其他功能完善起來:下一篇、 分享、 返回列表。 Step 1....
摘要:詳情功能完善本文配套視頻地址開始前請把分支中的目錄導入微信開發工具這一節中,我們把詳情的其他功能完善起來下一篇分享返回列表。 詳情 - 功能完善 本文配套視頻地址:https://v.qq.com/x/page/f0555... 開始前請把 ch4-3 分支中的 code/ 目錄導入微信開發工具 這一節中,我們把詳情的其他功能完善起來:下一篇、 分享、 返回列表。 Step 1....
摘要:配置配置全解析項目配置文件文件描述項目配置文件項目代碼配置是否檢查域名安全性和版本是否將項目的代碼轉成是否自動補全兼容前綴是否壓縮代碼是否啟用新功能編譯方式版本號項目名項目配置搜索關鍵字客服編譯方式小程序配置項目路由設置第一項為首頁窗 1. 配置 配置全解析 project.config.json ( 項目配置文件 ) { // 文件描述 description: 項目...
閱讀 3420·2021-11-15 11:39
閱讀 1552·2021-09-22 10:02
閱讀 1309·2021-08-27 16:24
閱讀 3596·2019-08-30 15:52
閱讀 3412·2019-08-29 16:20
閱讀 824·2019-08-28 18:12
閱讀 550·2019-08-26 18:27
閱讀 715·2019-08-26 13:32