信小程序中的路由主要通过微信小程序的内置模块wx.navigateTo
、wx.redirectTo
、wx.switchTab
、wx.navigateBack
等实现。这些函数可以在小程序中实现页面之间的跳转,或者页面重定向等操作。
wx.navigateTo
:保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面。使用 wx.navigateBack 可以返回到原页面。
wx.navigateTo({ url: 'test?id=1' })
wx.redirectTo
:关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面。
wx.redirectTo({ url: 'test?id=1' })
wx.switchTab
:跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面。
wx.switchTab({ url: '/index' })
以上函数中,url
参数表示需要跳转的目标页面,delta参数表示需要返回的页面数。例如,如果当前页面是第三级页面,调用wx.navigateBack({delta: 2})
将返回到第一级页面。如果delta不存在,则默认返回上一页。如果需要返回至指定tabBar页面,只能使用switchTab函数。另外,小程序里无法实现像手机浏览器那样的完全返回,即使用navigateBack后,无法返回到之前的多个页面。