微信小程序 按物理返回键返回指定页面 跳转多个页面后,按返回指定的页面解决方案

微信小程序 按物理返回键返回指定页面 跳转多个页面后,按返回指定的页面解决方案

image-20220512165455413

image-20220512165536304

image-20220512165611050

  • 实现思路

在页面进行返回时会将页面进行销毁,并调用onUnload函数

可以在onUnload函数中调用wx.reLaunch 方法,关闭其他的页面,跳转带菜单页(我的需求是这样)

  • 实际测试中的问题

设置的返回跳转的url地址,如果是以当前页面为相对根目录,写的地址会提示找不到页面

image-20220512170902414

在测试的实际过程中发现,以a—>b—>c—>d 为例

我们希望按返回键的时,直接从d返回 a

在我们从d页面返回c页面的过程中,c页面出现后,d页面的onUnload 方法才被回调(猜测销毁回调需要时间),

所以由于这个延迟原因的存在

d页面onUnload方法的内容,实际上是在c页面上进行执行的

因此 d页面在onUnload中要跳转的路劲应该是以 c页面 为相对根目录去设置

c页面返回d页面的过程中
	c页面执行
		..,onhide(),onshow(),onUnload()?(此处不是特别确定)
	d页面执行
		c页面的onUnload()?(此处不是特别确定),onLoad(),Onshow()...

在d页面onUnload 设置的返回路径以c页面为先对根目录即可,从c页面直接返回a页面,中间c页面会快速闪一下

  onUnload: function(){
    wx.reLaunch({
      // url: '../../menu/menu',
      url: './menu',
    })
  }

image-20220512173007936

也可以直接使用绝对路径,测试也没问题,但是上一级的页面也会出现闪一下

  onUnload: function(){
    wx.reLaunch({
      // url: '../../../menu/menu',
      url:'/pages/menu/menu'
    })
  }
  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值