服务支持
app开发资讯
小程序开发资讯
软件开发资讯
业界动态
公司动态
联系我们

了解更多详细信息请致电

4000-670-790

或给我们留言

在线留言

您所在的位置: 首页 > 服务支持 > 知识中心 >

微信小程序开发中页面跳转及限制开发的解决方案

作者:深圳软件开发公司 点击量: 2019-11-12 11:19
内容导读: 在微信小程序开发里面,有通过页面或菜单跳转到菜单的情况,这时候使用的是wx.switchTab;有通过页面或菜单跳转到页面的情况,这时候使用的是wx.navigateTo或wx.redirectTo,也可以使用页面控件navigator的url进行跳转。 ...

  微信小程序的页面跳转场景

  在微信小程序里面,有通过页面或菜单跳转到菜单的情况,这时候使用的是wx.switchTab;有通过页面或菜单跳转到页面的情况,这时候使用的是wx.navigateTo或wx.redirectTo,也可以使用页面控件navigator的url进行跳转。对于页面的后退,可以使用wx.navigateBack。

微信小程序开发

  以上是微信小程序最常用的5种跳转方式,还有一种不常用,那就是wx.reLaunch,这种跳转方式默认是没有返回按钮的,如果要跳转到的页面不需要返回按钮,可以使用这种。

  微信小程序的跳转限制

  在微信小程序里面,页面层级的限制是5层,也就是说,使用navigateTo进行跳转的次数是5。微信的页面容器就好比是一个能装5个篮球的筐,每navigateTo一个页面,就会往筐里扔进去一个篮球,当进行页面回退的时候,就会把篮球取走一个,这样当navigate进筐的篮球的个数为5时便不能再往里放了,这时候页面也就不能再跳转了。使用时需要注意这个细节,如果有特殊需要,则需要重写这个筐的代码。

  微信小程序的跳转函数和标签

  跳转函数:1.wx.reLaunch 2.wx.navigateTo 3.wx.navigateBack 4.wx.switchTab 5.wx.redirectTo

  跳转标签:navigator-url

  如何解决微信小程序的5层限制

  解决方案

  (1)自定义页面跳转方式

  (2)当页面栈里已经存在要跳转的目标页面A,那么使用wx.navigateBack({delta: xx})返回到此页面A,{xx=getCurrentPages().length - 目标页面A在栈里的index - 1}

  (3)如果页面栈还没有要跳转的目标页面A a、若页面栈已经已满(length>=5),那么使用wx.redirectTo(页面A); b、否则,使用wx.navigateTo(页面A)

  (4)页面间数据采用缓存传递

  总之,判断当前要跳转的页面是否已经存在,再判断是否已经大于等于5层了,再对页面做处理。

创新梦想:www.szcxmx.com】个性化软件定制开发专家!提供专业的软件开发、手机APP开发、微信开发、小程序定制服务!

本文关键字: 微信小程序开发
业务咨询
咨询在线客服
合作咨询
咨询在线客服

我们的微信

我们的微博

点击图标进入帮助中心