微信小程序 按物理返回键返回指定页面 跳转多个页面后,按返回指定的页面解决方案
微信小程序 按物理返回键返回指定页面 跳转多个页面后,按返回指定的页面解决方案
- 实现思路
在页面进行返回时会将页面进行销毁,并调用onUnload函数
可以在onUnload函数中调用wx.reLaunch 方法,关闭其他的页面,跳转带菜单页(我的需求是这样)
- 实际测试中的问题
设置的返回跳转的url地址,如果是以当前页面为相对根目录,写的地址会提示找不到页面
在测试的实际过程中发现,以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',
})
}
也可以直接使用绝对路径,测试也没问题,但是上一级的页面也会出现闪一下
onUnload: function(){
wx.reLaunch({
// url: '../../../menu/menu',
url:'/pages/menu/menu'
})
}