使用菜单激活路线的Angular7可以工作,但是无论粘贴什么内容,复制粘贴任何路线都会重定向到首页

时间:2019-01-09 16:32:03

标签: angular angular-routing angular7 angular-router

我一直在与另一个我并排的angular6项目进行比较,除了使用“ sidenav”导航外,我看不出其他任何区别。我将路由器出口保留在sidenav容器内的app.component中,但我也将其从那里移到了文件的顶部,以确保它不是罪魁祸首。

如果我使用常规导航转到某个组件/路线,即使使用路线参数也可以很好地工作。

当我尝试导航到链接时,它会重定向到首页,而路由器插座甚至都不会加载“ home”组件。

我的路由模块代码:

const routes: Routes = [
      {
        path: 'admin-panel/:resource',
        component: AdminPanelComponent,
        canActivate: [AdalGuard, TenantGuard]
      },
      { path: '', component: HomeComponent, canActivate: [AdalGuard] },
      { path: '*', component: NotFoundComponent, canActivate: [AdalGuard] }
    ];

    @NgModule({
      imports: [RouterModule.forRoot(routes)],
      exports: [RouterModule]
    })
    export class AppRoutingModule {}

2 个答案:

答案 0 :(得分:0)

正如本沙巴特诺姆(Benshabatnoam)所评论的那样,您需要在pathMatch: 'full'的路径上使用'',否则,所有内容都将与之匹配。

 { path: '', component: HomeComponent, canActivate: [AdalGuard],  pathMatch: 'full' },

详细了解有关here的棱角文档

答案 1 :(得分:0)

不一定是解决方案,但在我的特定情况下,发生这种情况的原因是我写为canActivate的Guard,只需要从头开始进行重建,就没有调试该东西了。