Angular 5定义模块内的子路由

时间:2018-01-24 23:08:14

标签: angular angular2-routing angular5

我有以下结构的Angular 5应用程序:

/-app module
   /--- settings dashboard component
/-settings A module
   /--- list A component
   /--- edit A component
/-settings B module
   /--- list B component
   /--- edit B component

我想为这些模块和组件设置路线:

'settings' -> settings dashboard component (defined in app-routing.module.ts)
'settings/A' -> list A component (defined in a-routing.module.ts)
'settings/A/edit' -> list A edit component (defined in a-routing.module.ts)
'settings/B' -> list B component (defined in b-routing-module.ts)
'settings/B/edit' -> list B edit component (defined in b-routing-module.ts)

有可能吗?我尝试了与孩子的路线组合,但它不起作用。

1 个答案:

答案 0 :(得分:0)

好的,我在这里看到你的担忧,但是,有可能。

APP-routing.module

const routes: Routes = [{
  path: 'settings',
  component: SettingsDashboardComponent
}, {
  path: 'settings/A',
  loadChildren: './a/a.module#AModule'
}, {
  path: 'settings/B',
  loadChildren: './b/b.module#BModule'
}];

A-routing.module

const routes: Routes = [{
  path: '',
  component: AListComponent
}, {
  path: 'edit',
  component: AEditComponent
}];

b-routing就像一个路由。

路线包含另一个路段的一部分这一事实并不重要,它可以完全匹配。它确实关心延迟加载的部分内容,但只能在延迟加载的路由中的某个地方匹配完整路由。