之前肯定有很多 V 友遇到这个问题, 例如从页面的 1 用 wx.switchTab()跳转到 tabBar 时,我们的数据没有更新, 或着说我们的需求是页面 1 发布了新内容,switchTab 页能及时刷新后台数据显示。
接下来我们讲下 weChat 的跳转方式:
小程序跳转的几种方式有 wx.navigateTo(), wx.redirectTo(), wx.reLaunch(), wx.switchTab()等。
其他的 V 友有空自己试下,我们重点研究切换到 tabBar 的两种方式。 wx.switchTab()//跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面; wx.reLaunch()//关闭所有页面,打开到应用内的某个页面。
我们回到根源,我们 wx.switchTab()跳转是不会触发 onLoad 事件从而数据不会更新, 而 wx.reLaunch()则是会触发 onLoad 事件, 这样解决了从页面切换到 tabBar 页面不会刷新的坑
其实官方还提供了一个 API--wx.redirectTo(), 对于这个 API 官方的说法是(关闭当前页面,跳转到应用内的某个页面。) 我在 demo 测试的时候并未生效。可能是场景不同,有兴趣的 V 友可以去尝试下。
细心的 V 友可能都会去试过了知道了这些特性,还请各位 V 友多多指教
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.