-
在使用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
相关推荐
QuantumLeap丶1 天前
《uni-app跨平台开发完全指南》- 06 - 页面路由与导航用户9714171814271 天前
uniapp页面路由Kingsaj1 天前
uni-app打包app -- 在用户首次启动 App 时,强制弹出一个“用户协议与隐私政策”的确认对话框。Vue10241 天前
uniapp 使用renderjs 封装 video-player 视频播放器, html5视频播放器-解决视频层级、覆盖、播放卡顿钱端工程师1 天前
uniapp封装uni.request请求,实现重复接口请求中断上次请求(防抖)茶憶1 天前
uni-app app移动端实现纵向滑块功能,并伴随自动播放dcloud_jibinbin1 天前
【uniapp】解决小程序分包下的json文件编译后生成到主包的问题茶憶1 天前
uniapp移动端实现触摸滑动功能:上下滑动展开收起内容,左右滑动删除列表蒲公英源码1 天前
uniapp开源ERP多仓库管理系统shykevin1 天前
uni-app x开发商城系统,小程序发布,h5发布,安卓打包