我的应用程序中有两个模块,一个是app.module
,另一个是user.module
,这两个模块被延迟加载。在app.module
上,我有一个sign-in
组件,sign-up
组件和main
组件。 main.component
是由导航栏和侧栏组成的组件。我希望将user.module
中的每个组件加载到main.component
中。但是控制台Error: Cannot match any routes. URL Segment: 'user/home'
出现错误。
app.routing
import { MainComponent } from './main/main.component';
import { SignInComponent } from './sign-in/sign-in.component';
import { SignUpComponent } from './sign-up/sign-up.component';
const routes: Routes = [
{ path: 'sign-in', component: SignInComponent, pathMatch: 'full' },
{ path: '', redirectTo: 'sign-in', pathMatch: 'full' },
{ path: 'sign-up', component: SignUpComponent }
{
path: '',
component: MainComponent,
children: [
{
path: 'user',
loadChildren: () => import('./user/user.module').then(m => m.UserModule)
},
]
},
/* { path: '500', component: Error500Component },
{ path: '**', component: Error404Component }, */
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
user.routing
import { HomeComponent } from './home/home.component';
import { Routes, RouterModule } from '@angular/router';
import { FriendsComponent } from './friends/friends.component';
const routes: Routes = [
{
path: '',
children: [
{ path: 'home', component: HomeComponent },
{ path: 'friends', component: FriendsComponent }
]
}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class UserRoutingModule { }
答案 0 :(得分:0)
您应该在UserRoutingModule
中导入和导出UserModule
。
@NgModule({
declarations: [..],
imports: [UserRoutingModule],
exports: [UserRoutingModule],
providers: [..]
})
export class UserModule {}
答案 1 :(得分:0)
一切正常,您在main.component.html中指定了路由器出口吗?
<router-outlet></router-outlet>