-
在使用uniapp的原生返回的按钮时,如果没有刷新会正常返回到对应的页面,如果刷新后会在当前页反复横跳,或者跳转到登录页。
-
那个时候我第一个想法时:使用浏览器的history.back()方法。因为浏览器刷新后还是可以通过右上角的返回按钮进行返回的。
-
然后我通过uniapp的addInterceptor或者onBackPress进行劫持点击返回时的事件。


-
可惜经过刷新后的后退按钮完全没有调用这两个回调。
-
这个时候我发现如果刷新后点击回退后会调用reLaunch的方法。

-
所以我在reLaunch判断,如果是uniapp自动调用的reLaunch这个方法。我就return false,并调用 history.back()方法返回上一个页。
javascriptuni.addInterceptor("reLaunch", { invoke(e) { // 因为刷新后进行后退会调用这个路径,所以需要劫持然后调用back方法。 if (e.url == "/") { history.back(); return false; } }, }); -
当然这个是浏览器才有的问题,如果是原生app,不会有刷新的功能。加这个逻辑的时候记得判断是不是原生app,可以通过是否有plus这个属性来进行判断是哪一个环境。
处理uniapp刷新后,点击返回按钮跳转到登录页的问题
姚*鸿的博客2024-07-18 21:13
相关推荐
小禾青青9 分钟前
在uniapp中使用piniafakaifa2 小时前
【全开源】智慧共享农场源码独立版+uniapp前端toooooop82 小时前
uniapp多个页面监听?全局监听uni.$emit/$on骨子里的偏爱2 小时前
【案例】uniapp实现内部信息与外部的html网页双向通信的完整的过程,附加完整的代码部分郑州光合科技余经理2 小时前
开发指南:海外版外卖跑腿系统源码解析与定制2501_916008892 小时前
提高 iOS 应用逆向难度的工程实践,多工具联动的全栈安全方案广白3 小时前
钉钉小程序直传文件到 阿里云OSSAmy_yang4 小时前
前端实现 Server-Sent Events 全解析:从代码到调试的实战指南iOS阿玮7 小时前
苹果悄悄上线网页版 App Store!官方出品调研竞品更方便~2501_915909067 小时前
iOS App 测试工具全景指南,构建从开发、性能到系统级调试的多工具协同测试体系