微信小程序:wx.navageteTo等跳转api使用

wx.navageteTo等跳转api使用

我们采用这样的方式进行描述页面栈:[ pageA, pageB, pageC ],其中pageA在最底下,pageC在最顶上,小程序宿主环境限制了这个页面栈的最大层级为10层。

使用 wx.navigateTo({ url: ‘pageD’ }) 可以往当前页面栈多推入一个 pageD,此时页面栈变成 [ pageA, pageB, pageC, pageD ]。

使用 wx.navigateBack() 可以退出当前页面栈的最顶上页面,此时页面栈变成 [ pageA, pageB, pageC ]。

使用wx.redirectTo({ url: ‘pageE’ }) 是替换当前页变成pageE,此时页面栈变成 [ pageA,
pageB, pageE ],当页面栈到达10层没法再新增的时候,往往就是使用redirectTo这个API进行页面跳转。

我们可以在刚刚的例子所在的页面栈中使用wx.switchTab({ url: ‘pageF’ }),此时原来的页面栈会被清空(除了已经声明为Tabbar页pageA外其他页面会被销毁),然后会切到pageF所在的tab页面,页面栈变成 [ pageF ],此时点击Tab1切回到pageA时,pageA不会再触发onLoad,因为pageA没有被销毁。

wx.navigateTo和wx.redirectTo只能打开非TabBar页面,wx.switchTab只能打开Tabbar页面。

我们还可以使用 wx. reLaunch({ url: ‘pageH’ }) 重启小程序,并且打开pageH,此时页面栈为 [ pageH ]

wx.navigateTo,wx.redirectTo,wx.navigateBack,wx.switchTab,wx.reLaunch

猜你喜欢

转载自blog.csdn.net/m0_49888984/article/details/108053759