微信小程序 从某个页面直接返回首页

wx.navigateTo

正常 A -> B -> C 都是通过 wx.navigateTo 跳转的,所以 wx.navigateBack 只能返回上一页,如果要返回到 A 就会出现 C -> B -> A 的效果。

wx.redirectTo

如果想实现 A -> B -> C 当 C 点击返回时, 实现直接 C -> A 这种效果, 就只能A -> B 通过 wx.navigateTo 跳转,B -> C 通过 wx.redirectTo 跳转,跳转触发后 B 页面就会被销毁, C 页面再返回 wx.navigateBack 就会直接到 A 了。

小程序5种跳转页面方式的区别

wx.switchTab

* 只能跳转到tabBar配置页面

// 只能跳转到tabBar配置页面
wx.switchTab({
    url: '/pages/index/index',
});

wx.navigateBack

* 返回上一级页面

* delta:返回的页面数,如果 delta 大于现有页面数,则返回到首页,默认值为1

// 返回上一级页面(delta:返回的页面数,如果 delta 大于现有页面数,则返回到首页,默认值为1)
wx.navigateBack({
    delta: 2   // 默认值是1
})

wx.redirectTo

* 关闭当前页面,跳转到应用内的某个页面

// 关闭当前页面,跳转到应用内的某个页面
wx.redirectTo({
    url: '/pages/index/index',
});

wx.navigateTo 

* 保留当前页面,跳转到应用内的某个页面

// 保留当前页面,跳转到应用内的某个页面
wx.navigateTo({
    url: '/pages/index/index',
});

wx.reLaunch

* 关闭所有页面,打开到应用内的某个页面

// 关闭所有页面,打开到应用内的某个页面
wx.reLaunch({
    url: '/pages/index/index',
})

你可能感兴趣的:(Web,FrontEnd,Wechat,Applet,小程序跳转方式,wx.reLaunch,wx.switchTab,wx.redirectTo,wx.navigateTo)