解决微信小程序防止无法回到主页的问题

作者:猪哥 2018-10-09

【小程序】提交订单页面到订单详情页面,如何防止无法回到主页

问题场景:

小程序某个页面完成后,希望跳转到另一个相关页面。

比如,订单提交完成后,希望跳转到订单详情页面,可选的方案有两个

A 使用 wx.navigateTo 跳转到非 tabBar 页面

优点是有返回按钮,可以一步一步的返回到主页

缺点是用户体验很差,还有可能重复发布订单

B使用 wx.redirectTo跳转到非 tabBar 页面

优点是,不会返回旧页面

缺点是,无法返回主页,造成死循环

解决办法

1、使用 wx.reLaunch 可以带参数的特性,跳转到 tabbar 页面,如

wx.reLaunch({
  url: '/pages/me/me?pageId=mypublishhome'
});

2、在pages/me/me页面的 onLoad中加入判断,进行跳转管理,这样新打开的页面

pages/me/mypublishhome/mypublishhome就可以实现返回tabbar页面,进而可以进入其他主页了

 onLoad: function(options) {
  that = this;
  console.log('当前页面的options是', options);
  if (options.pageId) {
   //这个pageId的值存在则证明首页的开启来源于用户点击
   console.log('当前页面的options是', options.pageId);
   wx.navigateTo({
    url: '/pages/me/' + options.pageId + '/' + options.pageId,
   })
  }
 }

相关文章

精彩推荐