小程序navigatorTo缺点和修正方法

1.不好带参数跳转到tabbar,即下部的导航栏目。

  reLauntch方法可以传递参数到导航栏目;

  

    go_to_prolist: function (e) {
        var datatype = e.currentTarget.dataset.datatype;
        wx.reLaunch({
            url: '../product/product?datatype=' + datatype,
        });
        /*
        wx.navigateTo({
            url:'../product/prolist?datatype='+datatype,
        });
        */
    },

2.循环点击(最多3 4次),会使得bindtap按钮消失;

附录(什么是循环点击,从A to B的bindtap,再从B to A,如此循环);

  用redirect方法,可以修复这个缺点~~~~

  go_to_mycoupon:function(e){
    var that = this;
    var order_num = e.currentTarget.dataset.order_num;//未必整型
    var product_id = e.currentTarget.dataset.product_id;
    wx.redirectTo({
      url: '/pages/coupon/my_coupon?order_num=' + order_num + '&product_id=' + product_id,
    })
  },

  

  • navigateTo,redirectTo只能打开非 tabBar 页面。
  • switchTab 只能打开 tabBar 页面。
  • reLaunch 可以打开任意页面。
  • 页面底部的 tabBar 由页面决定,即只要是定义为 tabBar 的页面,底部都有 tabBar。
  • 调用页面路由带的参数可以在目标页面的onLoad中获取。

onShow 传递不了参数