Angular 如果同时使用子参数,请使用重定向到,这是否可能?
由于您现在可能已经使用了最新的Angular 如果同时使用子参数,请使用重定向到,这是否可能?,angular,typescript,routing,angular2-routing,Angular,Typescript,Routing,Angular2 Routing,由于您现在可能已经使用了最新的@angular/router 3.0.0-rc.1,如果您还使用children参数,则不允许您使用重定向到参数 但可以肯定的是,在某些情况下,这是你需要的,就像我的情况一样。 例如,我想要的是将所有请求重定向到第一个子路由器 这是我的路由器: { path: 'project/:id', component: ProjectComponent, children: [ { path: 'properties',
@angular/router 3.0.0-rc.1
,如果您还使用children
参数,则不允许您使用重定向到
参数
但可以肯定的是,在某些情况下,这是你需要的,就像我的情况一样。
例如,我想要的是将所有请求重定向到第一个子路由器
这是我的路由器:
{
path: 'project/:id',
component: ProjectComponent,
children: [
{
path: 'properties',
component: ProjectPropertiesComponent
},
{
path: 'stats',
component: ProjectStatsComponent
}
]
}
在我的例子中,我希望每个进入项目/:id
路线的人都被重定向到第一个孩子(properties
)
这有可能吗
如果我这样尝试:
{
path: 'project/:id',
component: ProjectComponent,
redirectTo: 'properties',
children: [
{
path: 'properties',
component: ProjectPropertiesComponent,
},
{
path: 'stats',
component: ProjectStatsComponent
}
]
}
我当然会遇到这样的错误:
异常:错误:路由“project/:id”的配置无效:重定向到和子级不能一起使用
空的子路由应执行以下操作:
{
path: 'project/:id',
component: ProjectComponent,
children: [
{
path: '',
redirectTo: 'properties',
pathMatch: 'full'
},
{
path: 'properties',
component: ProjectPropertiesComponent,
},
{
path: 'stats',
component: ProjectStatsComponent
}
]
}
j2L4e的答案是正确的,但我也被迫将“路径匹配”类型设置为“前缀” 路径匹配:“前缀”
{
path: 'project/:id',
component: ProjectComponent,
children: [
{
path: '',
redirectTo: 'properties',
pathMatch: 'prefix'
},
{
path: 'properties',
component: ProjectPropertiesComponent,
},
{
path: 'stats',
component: ProjectStatsComponent
}
]
}
谢谢!在同一时间,我回答了完全相同的问题:)但无论如何,这是正确的答案很高兴我几乎能帮上忙!;)我希望我看到了这个问题/答案,而不是浪费很多时间试图让默认重定向工作。感谢@j2L4eI不得不在重定向到行后添加pathMatch:“full”。不适用于pathMatch:“full”,您必须使用下面指定的前缀@user2735883