Angular Can';在角度方向上,t布线至正确的部件
不确定我是否正确设置了路由。 我似乎无法使用以下命令路由到“MemberEditComponent”Angular Can';在角度方向上,t布线至正确的部件,angular,angular-routing,Angular,Angular Routing,不确定我是否正确设置了路由。 我似乎无法使用以下命令路由到“MemberEditComponent” [routerLink]="['/members/edit']" 这是“我的成员”模块的“我的应用程序路由”部分 { 路径:'成员', Runguard和Resolver:“始终”, canActivate:[AuthGuard], 加载子项:()=> 导入(“./members/members.module”) .然后(mod=>mod.MembersModule) }
[routerLink]="['/members/edit']"
这是“我的成员”模块的“我的应用程序路由”部分
{
路径:'成员',
Runguard和Resolver:“始终”,
canActivate:[AuthGuard],
加载子项:()=>
导入(“./members/members.module”)
.然后(mod=>mod.MembersModule)
},
这是因为,在您的路线中,您指定了两个可以读取相同的参数,因此默认情况下,如果您访问/members/edit
,它将首先到达您的成员详细信息组件
,因为angular将您的/edit
视为:id
MemberDetails组件的参数
{
path: ':id',
component: MemberDetailsComponent,
resolve: {
user: MemberDetailResolver
}
},
{
path: ':edit',
component: MemberEditComponent,
canDeactivate: [PreventUnsavedChangesGuard]
},
相反,您可以这样实现它:
{
path: 'edit', // without :, so this will be matched first if the route has /edit in it
// or edit/:id if you are editing something in this component
component: MemberEditComponent,
canDeactivate: [PreventUnsavedChangesGuard]
},
{
path: ':id',
component: MemberDetailsComponent,
resolve: {
user: MemberDetailResolver
}
},
当您将鼠标放在链接上时,它是指向地址/成员/编辑还是指向地址/编辑?是。它不应该先把我引向角度分量吗?因为在异常中间件中我的控制器中引发了一个异常。似乎它试图先调用我的控制器,而不是路由到角度组件