我具有以下应用程序结构:
/app
/administration
/useradmin
useradmin.module
useradmin.routing.module
administration.module
administration.routing.module
当前,每个模块都注册自己的路由:
administration.routing.module:
RouterModule.forChild([
{ path: 'administration', component: AdministrationComponent, pathMatch: 'full' }])
useradmin.routing.module:
RouterModule.forChild([
{ path: 'administration/user', component: UserComponent, pathMatch: 'full' }])
如何修改路由模块,以使useradmin.routing.module中定义的路由成为“管理”路由的子路由?
答案 0 :(得分:0)
将 administration.routing.module 更新为:
RouterModule.forChild([
{
path: 'administration',
component: AdministrationComponent,
children: [
{path: 'user', component: UserComponent}
]
}
]);
);
此处提供了更多详细信息 https://angular.io/guide/router#child-route-configuration
答案 1 :(得分:0)
您可以将LazyLoad
用于模块。
在main route
的{{1}}模块中
app.module
然后在您的 {
path: 'administration',
loadChildren: () => import('./administration/administration.module').then(mod => mod.AdministrationModule),
},
中,必须声明这样的路由
administration.routing.module
然后在 const routes: Routes = [
{
path: '',
component: AdministrationComponent,
},
{
path: 'useradmin',
loadChildren: () => import('./useradmin/useradmin.module').then(mod => mod.UseradminModule),
},
];
imports: [
CommonModule,
RouterModule.forChild(routes)
中声明用户管理员路由
useradmin.routing.module
并在模块中添加const routes: Routes = [
{
path: '',
component: UserComponent,
}];