小程序防止重復點擊打開多個頁面


/**
* 導航工具一
*/

static navTo(obj) {

    var app = getApp();

 

    if (app.globalData.isClicked) {

      return;

    }

 

    app.globalData.isClicked = true;

    wx.navigateTo({

      url: obj.url,

      success: typeof (obj.success) === 'function' ? obj.success : function () { },

      fail: typeof (obj.fail) === 'function' ? obj.fail : function () { },

      complete: function () {

        setTimeout(function () {

          app.globalData.isClicked = false;

        }, 1000);

        if (typeof (obj.complete) === 'function') {

          obj.complete()

        }

      },

    });

  }



/**
* 導航工具二
*/

handleForward(event) {
         const { url, openType } = event.currentTarget.dataset;
         let  forwardObj = {
             url: url,
             success() {
                let t = setTimeout(function() {
                     app.globalData.isNavigating =  false ;
                     clearTimeout(t);
                 }, 500);
             }
         };
         if  (! app .globalData.isNavigating) {
             app .globalData.isNavigating =  true ;
 
             switch  (openType) {
                 case  'switchTab' :    // 切換tab
                     wx.switchTab(forwardObj);
                     break ;
                 case  'redirect' :     // 重定向
                     wx.redirectTo(forwardObj);
                     break ;
                 default :             // 正常跳轉
                     wx.navigateTo(forwardObj);
                     break ;
             }
         }
     }




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM