带有子路由和导航栏的角模块

时间:2018-11-16 11:04:53

标签: angular typescript angular-routing

我有一个应用程序,该应用程序分为以下模块:

/app
    /core
    /admin
    /authentication
    /wst

Admin是一个带有边栏的复杂模块,身份验证只是一个登录屏幕。我只想在管理模块处于活动状态并且不希望将它包含在app.component.html中并带有* ngIf的情况下才加载侧栏。

如何进行这样的配置? 我正在使用Angular7,并启动了stackblitz that shows my problem

  • 如果我将路由器出口添加到app.component.html中,例如/登录路线工作 很好。
  • 如果我使用/ admin尝试相同操作,则不会显示任何内容。

1 个答案:

答案 0 :(得分:1)

如果要在AdminComponent中使用ProfileComponent,则AdminModule的路由应类似于:

const routes: Routes = [
  {
    path: '', component: AdminComponent,
    children: [
      { path: 'profile', component: ProfileComponent }
    ]
  },
]

首先要解决一些构建错误:

  • 导入AdminRoutingModule而不是AdminModule中的RoutingModule。

  • ProfileComponent应该在AdminModule中声明或导入。

然后/admin/profile应该显示带有菜单和配置文件的AdminComponent。如果您希望它是/admin,只需将重定向规则添加到路由。