碧海长天

好看的皮囊千篇一律,有趣的灵魂万里挑一。

微信小程序-页面跳转说明

2017-12-13

微信小程序的页面间跳转,目前有五种方式,各有各的使用场景。用时需谨慎。

1. wx.navigateTo(OBJECT)
说明:保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面。
示例代码:
wx.navigateTo({
  url: 'test?id=1'
})

2. wx.redirectTo(OBJECT)
说明:关闭当前页面,跳转到应用内的某个页面。
示例代码:
wx.redirectTo({
  url: 'test?id=1'
})
3. wx.reLaunch(OBJECT)
说明:关闭所有页面,打开到应用内的某个页面。
示例代码:
wx.reLaunch({
  url: 'test?id=1'
})
4. wx.switchTab(OBJECT)
跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
示例代码:
wx.switchTab({
  url: '/index'
})

5. wx.navigateBack(OBJECT)
说明:关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages()) 获取当前的页面栈,决定需要返回几层。
示例代码:
// 注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,而 redirectTo 方法则不会。见下方示例代码

// 此处是A页面
wx.navigateTo({
  url: 'B?id=1'
})

// 此处是B页面
wx.navigateTo({
  url: 'C?id=1'
})

// 在C页面内 navigateBack,将返回A页面
wx.navigateBack({
  delta: 2
})

tips: wx.navigateTo 和 wx.redirectTo 不允许跳转到 tabbar 页面,只能用 wx.switchTab 跳转到 tabbar 页面  (此处是坑,所以需要注意)


标签: 小程序

评论:

风烛残年
2017-12-13 23:26
很不错,我说我的小程序页面跳转怎么那么奇怪。
碧海长天
2017-12-13 23:27
@风烛残年:恩恩,看文档才是第一生产力哈哈

发表评论: