具有多个可选参数的Angular2和布线
我有一个Angular2应用程序,它有一个带有多个路由参数的模块,其中一些是可选的。路由在Angular本身内部工作完全正常,但如果直接使用,生成的URL会中断。我在想原因。我还试图弄清楚,当具有多个可选参数的Angular2和布线,angular,angular2-routing,Angular,Angular2 Routing,我有一个Angular2应用程序,它有一个带有多个路由参数的模块,其中一些是可选的。路由在Angular本身内部工作完全正常,但如果直接使用,生成的URL会中断。我在想原因。我还试图弄清楚,当/champion处于访问状态时,无论参数是什么,我都可以使链接处于活动状态 模块中定义的路线 RouterModule.forChild([ { path: 'champion/:id', component: ChampionComponent }, { path: 'champion/:id/
/champion
处于访问状态时,无论参数是什么,我都可以使链接处于活动状态
模块中定义的路线
RouterModule.forChild([
{ path: 'champion/:id', component: ChampionComponent },
{ path: 'champion/:id/:version', component: ChampionComponent }
])
链接(点击时有效)
冠军分析
但是尝试直接访问URL(localhost:5555/champion/1/7.9.1
)失败,因为无法获取/champion/1/7.9.1
编辑:我应该注意,只有第二条路线失败。在地址栏中键入
localhost:5555/champion/1
可以正常工作。尝试交换路由线路
RouterModule.forChild([
{ path: 'champion/:id/:version', component: ChampionComponent },
{ path: 'champion/:id', component: ChampionComponent }
])
(从锚上向下滚动一点)可能是重复的你好,@ProfessorAllman,我已经编辑了原文。其他路线也可以,只是有多个参数的条目不行。不,恐怕是同一个问题。单击包含第二个参数的链接有效,但使用地址栏无效。无论绕路线走哪条路,结果都是一样的。
RouterModule.forChild([
{ path: 'champion/:id/:version', component: ChampionComponent },
{ path: 'champion/:id', component: ChampionComponent }
])