SilurianYang / uni-simple-router

A simple, lightweight 'uni-app' routing plugin
https://v2.hhyang.cn/v2/
MIT License
749 stars 163 forks source link

前置路由拦截跳转时替换路由历史 #397

Closed jngxx closed 2 years ago

jngxx commented 2 years ago

问题描述 pages.json第一个页面是首页,前置路由拦截判断token,未登录则跳转到登录页,此时不登录,在手机上侧滑会返回到首页。

复现步骤 _router.beforeEach((to, from, next) => { let token=uni.getStorageSync(ACCESSTOKEN); if(token){ next() }else{ if (whiteList.indexOf(to.path) !== -1) { next() }else{ next({ path: '/pages/login/login', replace: true}) } } })

预期结果 用户不登录不能进入到首页,我希望在跳转'/pages/login/login'时替换掉路由记录中的'/pages/index/index',但是replace: true不起作用。

系统信息:

补充信息 [可选] [根据你的分析,出现这个问题的原因可能在哪里?]

SilurianYang commented 2 years ago

使用参数NAVTYPE代替replace

jngxx commented 2 years ago

next({ path: '/pages/login/login', NAVTYPE: 'replace'}) OK了