网友真实露脸自拍10p,成人国产精品秘?久久久按摩,国产精品久久久久久无码不卡,成人免费区一区二区三区

小程序模板網

踩坑:觸發bindlongtap同時觸發bindtap,wx.request帶參數發生錯誤,bindtap 多次點擊

發布時間:2018-04-16 10:36 所屬欄目:小程序開發教程

一:當一個元素上同時綁定了bindtap與bindlongtap的時候觸發bindlongtap同時依然會觸發bindtap

分享者:bug_zero,原文地址 
解決方案: 
由于目前在微信小程序上bindlongtap被放置在bindtap后面觸發,同時bindtap觸發時間為touchend,則我們可以額外自定義一個函數用來判斷觸發的是tap還是longtap代碼如下(在需要處理的頁面page內定義):

 

				
  1. //touchstart時候觸發
  2. setTapStartTime : function () {
  3. this.setData({
  4. startTime : Date.now()
  5. })
  6. },
  7. //tap或者longtap時候觸發時判斷
  8. isTap : function () {
  9. return Date.now() - this.data.startTime < 200;
  10. }
 

二:wx.request的請求地址帶上參數時候會發生錯誤,無法正常請求(目前未了解到是否是哪邊的問題):

解決方案:參數一律放在data內

 

三:bindtap 多次點擊,可以打開N個窗口

分享者:月老,原文地址  目前在華為手機上出現,其他機型沒測試

 

				
  1. <view class="toufang row" bindtap="{{setTask}}" data-href="taskSet/taskRewen/index">view>
 

				
  1. bindViewTap: function(event) {
  2.  
  3. var accountId=app.getAccountId();
  4. if(!accountId){
  5. app.getUserInfo(function(userInfo){})
  6. }
  7. var url=event.currentTarget.dataset.href;
  8. wx.navigateTo({
  9. url: "../"+url
  10. })
  11. }

快速的多次點擊就會出現打開多過窗口。(第一次加載的頁面沒有這種情況,是在內頁出現)。建議修復或給出解決方案。謝謝  問題已經解決,自己琢磨了一下,可以根據timeStamp的時間差來設置  1、在app.js定義全局變量 lastTapTime

 

				
  1. globalData:{
  2. lastTapTime : 0
  3. }

2、設置事件的時間差

 

				
  1. var app = getApp();
  2.  
  3. bindViewTap: function(event) {
  4. var url=e.currentTarget.dataset.href;
  5. var time=e.timeStamp;
  6. //設置無效點擊,根據自己的需求設置,這里navigateTo切換頁面到動畫結束需要的時間為500毫秒左右
  7. if(time - app.globalData.lastTapTime < 500 && app.globalData.lastTapTime != 0){
  8. app.globalData.lastTapTime = time;//這里一定更新無效點擊的時間
  9. return;
  10. }
  11. //更新有效點擊的時間
  12. app.globalData.lastTapTime = time;
  13. wx.navigateTo({
  14. url:url
  15. })
  16. }

大家可以嘗試封裝成方法,調用即可。



易優小程序(企業版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://www.xiuhaier.com/wxmini/doc/course/23437.html 復制鏈接 如需定制請聯系易優客服咨詢:800182392 點擊咨詢
QQ在線咨詢
AI智能客服 ×