这里是文章模块栏目内容页
wx.navigateTo和wx.redirectTo和wx.reLaunch实现小程序页面跳转

在小程序的页面之间跳转,并不如浏览器里面采用一个A标签即可实现,小程序提供了三个API用于组织页面间互相跳转。wx.navigateTo和wx.redirectTo和wx.reLaunch ,三者之间用途有区别,理解它们有助我们在开发中恰当的场景选择合适API。

  //三种Api 的写法 
   wx.navigateTo({
      url: '../send/houseform?id=' + hid,
    })
    
    wx.redirectTo({
      url: '../send/houseform?id=' + hid,
    })
    
    wx.reLaunch({
      url: '../send/houseform?id=' + hid,
    })


wx.navigateTo 跳转的性能应该最快。因为它不销毁当前页面窗口,直接把目标页面切换到小程序窗口的最顶层显示,当按手机的HOME按钮,能返回到上一页,通过wx.onShow监听页面显示事件,能在页面被在最顶层显示时做一些页面更新,例如,修过了 用户资料,返回到用户主页时刷新头像,或者昵称等等信息功能;微信小程序左上角有一个返回箭头,可以点击返回上一页。但是,小程序限制wx.navigateTo的历史记录层数,就是不可能无限的把页面保留着,新页面切换到顶层,因为保留一个页面肯定需要占用内存资源。


wx.redirectTo 跳转的性能中等,它销毁当前页面窗口 ,按手机的HOME按钮,无法返回上 一页面。它适合用在表单页面,用户录入数据后,提交保存,跳转到其他页面,不能再返回表单页面。


wx.reLaunch 重新加载当前页面 ,小程序 重新打开加载时间,和重启小程序差不多,只是,用这个API,重新加载小程序后,直接进入 reLaunch 设置的 url页面。 这个API,一般用在 用户登陆后,跳转到用户中心页面。以及其他页面有功能获取的数据,需要更新到小程序全局数据的页面,适合这个重新加载页面的跳转方式。


好了,本文内容全部完毕,感谢您的阅读,希望能帮助到您。