处理uniapp刷新后,点击返回按钮跳转到登录页的问题

  1. 在使用uniapp的原生返回的按钮时,如果没有刷新会正常返回到对应的页面,如果刷新后会在当前页反复横跳,或者跳转到登录页。

  2. 那个时候我第一个想法时:使用浏览器的history.back()方法。因为浏览器刷新后还是可以通过右上角的返回按钮进行返回的。

  3. 然后我通过uniapp的addInterceptor或者onBackPress进行劫持点击返回时的事件。

  4. 可惜经过刷新后的后退按钮完全没有调用这两个回调。

  5. 这个时候我发现如果刷新后点击回退后会调用reLaunch的方法。

  6. 所以我在reLaunch判断,如果是uniapp自动调用的reLaunch这个方法。我就return false,并调用 history.back()方法返回上一个页。

    javascript 复制代码
      uni.addInterceptor("reLaunch", {
        invoke(e) {
          // 因为刷新后进行后退会调用这个路径,所以需要劫持然后调用back方法。
          if (e.url == "/") {
            history.back();
            return false;
          }
        },
      });
  7. 当然这个是浏览器才有的问题,如果是原生app,不会有刷新的功能。加这个逻辑的时候记得判断是不是原生app,可以通过是否有plus这个属性来进行判断是哪一个环境。

相关推荐
梦曦i13 小时前
uni-router v1.1.1发布:守卫超时保护+路由监听
前端·uni-app
梦曦i17 小时前
全面解析uni-router v1.2.0功能
前端·uni-app
不如摸鱼去19 小时前
Wot UI 2.1.0 发布:ConfigProvider 全局配置能力升级
ui·小程序·uni-app
PedroQue9920 小时前
uni-router:uni-app路由管理新选择
前端·uni-app
这是个栗子1 天前
微信小程序开发(九)- uni-app微信小程序商城
微信小程序·小程序·uni-app·vue·vuex
中犇科技1 天前
2026商城APP开发公司 TOP5(电商垂直版)
uni-app
扁豆的主人1 天前
Uniapp如何构建和部署
uni-app
hhzz1 天前
Uniapp项目中解决一个比较典型的图标渲染问题:原生 tabBar(pages.json 里配置的那种)
uni-app·json
小徐_23332 天前
Wot UI 2.1.0 发布:ConfigProvider 全局配置能力升级
前端·uni-app
qq_229933132 天前
uniapp踩坑-组件嵌套子组件不触发onReachBottom事件
uni-app