# 跳转路由锁 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
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
2
3
4
5
6
7
8
9
针对性的解锁。关于 error
错误码列入下方:
# error.type
- 0 表示 next(false)
- 1 表示 next(unknownType)
- 2 表示加锁状态,禁止跳转
- 3 表示在获取页面栈的时候,页面栈不够level获取
← 路由守卫 app.vue获取$Route →