角度路由器 - 重定向到带有查询参数的URL时,无法匹配任何路由

时间:2018-02-21 17:07:36

标签: angular angular-ui-router angular-routing angular-router angular4-router

在将export function Right(...args){ return prepareInstance(RightInstanceMethods,RightStaticMethods)(...args) } 与查询字符串一起使用时,我在角度4应用程序中遇到了角度路由器的一些问题。

所以我的路线指定如下:

returnUrl

在我的const routes: Routes = [ { path: '', component: HomeComponent, canActivate: [AccessibilityGuard], canActivateChild: [AccessibilityGuard], children: [ { path: 'info', component: InfoComponent, children: [ { path: 'xpto/graphic', component: XptoGraphicComponent, }, ] }, ... ]; }]; 内,我有以下内容:

AccessibilityGuard

因此,考虑到我尝试导航到... canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean { const token = CookieHelper.getCookie('accessToken'); if(token == null || token == '') { this.router.navigate(['login']); return false; } ... } 的特定页面,我的网址可能类似于:XptoGraphicComponent。 如果我的http://localhost:4200/info/xpto/graphic?a=1&b=2&c=3找不到accessToken,它会将我重定向到登录页面。在那之后,我的网址将是:AccessibilityGuard

登录后,重定向不起作用,我在浏览器控制台上收到以下错误:

http://localhost:4200/login?returnUrl=/info/xpto/graphic?a=1&b=2&c=3

只有当我的网址中包含查询参数以及Error: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'info/xpto/graphic?a=1&b=2&c=3' 时,才会出现此问题。 关于如何解决这个问题的任何想法?提前谢谢!

0 个答案:

没有答案