小程序路由的跳转
发布于 3 年前 作者 taocheng 2225 次浏览 来自 分享

在微信小程序实战视频中(https://developers.weixin.qq.com/community/business/doc/00008c2f9d83a040de5ad3a945b80dw ),由于编写注册页面代码时,视频仅仅是使wx.navigateBack调回上n级页面:(delta表示第几级,例:1表示上一级)

但是在登录页面由于是自己完成的小作业,而且作为登录页面,逻辑上先于注册页面出现,注册页面自然也就不是登录页面的上一级页面,所以我把目光放在了wx.redirectTo,如下:

但是出现了如下bug,页面not found:

根据报错信息,我们可以看到url:pages/login/pages/enroll/enroll,这是为什么呢?我明明写的是pages/enroll/enroll为什么前面还多了个前缀?

原来这个是作为相对路径寻找页面的,而我写的确实绝对路径,自然出现bug。

那好,我现在修改好了,总不会出bug了吧。

确实,我可以正确跳转到了注册页面,那我们再点击返回登录页面试试?然后,没错,又出bug了,如下:

找不到前一个页面?明明我是从登录页面过来的,怎么会找不到前一个页面呢?然后我去看了一些微信开发者文档https://developers.weixin.qq.com/miniprogram/dev/api/route/wx.navigateBack.html

查询了wx.navigateBack的相关信息,如下:

原来,使用wx.redirectTo并不会把前一个页面保存到堆栈,而wx.navigateBack是从堆栈中寻找先前页面,自然也就找不到先前页面

所以,我改用了wx.navigateTo函数,不出意料,这次成功了

反复横跳,流畅无比,哈哈。

感谢各位观看,期待下次再见。

如果觉得写得还不错,可以给文章点个赞哦~

6 回复

确实是值得注意的点~

总结的不错~已赞

写得不错,感觉学得很认真!有些细节我之前都没有注意到。继续加油!

很细节,感觉学到了

感觉看视频教程和文档好认真啊,有学到路由跳转的知识,期待下篇文章!

社区大佬真多 我算是学到了

回到顶部