update
uni-simple-router 3.0 版本已发布,欢迎你的使用!

# 跳转路由锁 V 2.0.0+

跳转锁在 v1.5.4 已经添加。v2.0.0 则更为完善!跳转锁表示在每次跳转时都会把跳转状态修改为禁用,跳转完成后会自动解锁。加锁期间无法再次跳转。当遇到跳转错误时,则无法自动解锁,需要开发者自行解锁。

# 解锁方式如下

# (一) 暴力解锁



 
 
 



const router = createRouter({
	platform: process.env.VUE_APP_PLATFORM,  
	detectBeforeLock: (router, to, navType) => {
		router.$lockStatus=false;
	},
	routes: [...ROUTES]
});
1
2
3
4
5
6
7

在每次检测加锁强制前修改。此方式收益最低,也就是取消掉了跳转锁。

# (二) 优雅解锁



 
 
 
 
 



const router = createRouter({
    platform: process.env.VUE_APP_PLATFORM,  
    routerErrorEach:(error, router)=>{
        if(error.type===3){       
            router.$lockStatus=false;
        }
    },
	routes: [...ROUTES]
});
1
2
3
4
5
6
7
8
9

针对性的解锁。关于 error 错误码列入下方:

# error.type

  • 0 表示 next(false)
  • 1 表示 next(unknownType)
  • 2 表示加锁状态,禁止跳转
  • 3 表示在获取页面栈的时候,页面栈不够level获取