小程序防止重复点击打开多个页面


/**
* 导航工具一
*/

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