小程序中用于跳转页面的5个API及其区别如下:
- wx.navigateTo(options) - 功能:保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面。
- 特性:可以打开新的页面,新页面可以是tabBar页面,最多可以打开10个页面。
- 参数:options为一个对象,包括url(需要跳转的页面路径,必填)、success(跳转成功后的回调函数)、fail(跳转失败后的回调函数)等属性。
 
- 功能:保留当前页面,跳转到应用内的某个页面,使用
- wx.redirectTo(options) - 功能:关闭当前页面,跳转到应用内的某个页面,使用wx.navigateBack无法返回到原页面。
- 特性:与wx.navigateTo类似,但关闭当前页面,无法返回。
 
- 功能:关闭当前页面,跳转到应用内的某个页面,使用
- wx.reLaunch(options) - 功能:关闭所有页面,打开到应用内的某个页面。
- 特性:最彻底的重定向方式,会关闭所有页面。
 
- wx.switchTab(options) - 功能:跳转到tabBar页面,并关闭其他所有非tabBar页面。
- 特性:只能跳转到tabBar页面,常用于底部导航栏的页面切换。
 
- wx.navigateBack(options) - 功能:关闭当前页面,返回上一页面或多级页面。
- 特性:用于页面返回,可以通过delta参数指定返回的页面数。
 
区别归纳:
- 保留与关闭:wx.navigateTo保留当前页面,而wx.redirectTo和wx.reLaunch关闭当前页面。
- 返回能力:wx.navigateTo可以通过wx.navigateBack返回原页面,而wx.redirectTo无法返回。
- 页面数限制:wx.navigateTo、wx.redirectTo和wx.reLaunch打开新页面时,最多可以打开10个页面。
- 目标页面:wx.switchTab只能跳转到tabBar页面,而其他API可以跳转到任意页面。
- 重定向级别:wx.reLaunch是最彻底的重定向,会关闭所有页面;而wx.navigateBack只是关闭当前页面并返回。
以上API的使用可以根据具体业务需求灵活选择。