我使用的是一个路由守卫,它负责管理我的一个模块的所有路由。但是,在我知道我正在访问的路由是有效路由的特定情况下,我想在这种情况下禁用路由守卫。我使用的是:
router.navigate(url)用于导航到该url,但在这种情况下希望绕过路由守卫。有没有一种标准的或“最佳实践”的方法来做到这一点?
发布于 2018-08-09 14:27:40
您可以在防护中使用自定义条件,如下所示:
canActivate(
route: ActivatedRouteSnapshot,
state: RouterStateSnapshot)
: boolean | Observable<boolean> | Promise<boolean> {
if (route.url === 'unique/route/not/to/guard') {
return true;
} else {
// ... Your logic
}
}如果您的路由比较复杂(有is之类的),可以考虑使用regexp.exec检查有效性。
https://stackoverflow.com/questions/51753285
复制相似问题