顺序很重要,角度和第一个匹配。因此,这个简单的重新排序将解决您的问题。
const routes: Routes = [
{ path: '', redirectTo: 'plans', pathMatch: 'full' },
{
path: 'plan/edit/pn/:pn',
component: EditPlanPageComponent,
resolve: { plan: PlanResolver, planContext: PlanContextResolver },
},
{
path: 'plan/edit/:id',
component: EditPlanPageComponent,
resolve: { plan: PlanResolver, planContext: PlanContextResolver },
}
];
从
https://angular.io/guide/router#configuration
:
配置中的路由顺序很重要,这取决于
设计。路由器在匹配时使用第一个匹配获胜策略
路线,所以更具体的路线应该放在更不具体的上面
路线。在上面的配置中,具有静态路径的路由是
首先列出,然后是与
默认路线。通配符路由排在最后,因为它匹配
只有在没有其他路由首先匹配时,才应选择URL和。