Angular 角度2/4-在routerLink中传递多个参数

Angular 角度2/4-在routerLink中传递多个参数,angular,parameters,routes,Angular,Parameters,Routes,我试图在Angular应用程序中将链接路由到页面,但总是收到相同的错误 My Route.ts文件包含以下路由: export const ROUTES : Routes = [ {path:'',component:AvisosComponent }, {path:'gerenciarModeloAviso', component:GerenciaModAvisoComponent }, {path:'editModeloAviso/:id/:action',

我试图在Angular应用程序中将链接路由到页面,但总是收到相同的错误

My Route.ts文件包含以下路由:

export const ROUTES : Routes = [

    {path:'',component:AvisosComponent    },
    {path:'gerenciarModeloAviso', component:GerenciaModAvisoComponent },
    {path:'editModeloAviso/:id/:action', component: EditModeloAvisoComponent  }   

]
问题在于最后一条路线,它有两个参数

在html中,我尝试了以下方法:

<img src="../assets/editarOn.png" alt="Editar" [routerLink]="['/editModeloAviso',estrut.idAvisoEstrutura,'VIEW']" />
(我删除了“action”之前的“:”。无论如何,错误仍然存在。)

如果我在路由中只使用一个参数,那么就可以了,我没有错误。但是有两个,不可能

你能帮我吗


提前谢谢

问题似乎是您无意中避免在route.ts中使用绝对路径。试试这条路线

export const ROUTES : Routes = [

    {path:'',component:AvisosComponent    },
    {path:'gerenciarModeloAviso', component:GerenciaModAvisoComponent },
    {path:'/editModeloAviso/:id/:action', component: EditModeloAvisoComponent  }   

]
与此HTML部分结合使用

<img src="../assets/editarOn.png" alt="Editar" [routerLink]="['/editModeloAviso',estrut.idAvisoEstrutura,'VIEW']" />


应该可以。

无法复制:。像我刚才做的那样,发布一个完整的最小示例来重现这个问题。在这种情况下,你需要应用程序的哪一部分?命运之页?只要看看我发布的代码,你看到什么错误了吗?我不需要应用程序的一部分。我需要一个完整的最小的例子,正如我刚刚发布的,但这实际上再现了这个问题。你的角度版本2或4是什么?我不知道stackBlitz。我编辑了代码,包括更多内容。已尝试,但在浏览器控制台中出现此错误:错误:路由“/editModeloAviso/:id/:action”的配置无效:路径不能以斜杠开头,我的错误。你说得对。这项工程不应该起作用。我弄混了一些东西。恶魔之词,我改变了路径,移除了条,实现终于成功了!正确的路径是:{path:'editModeloAviso/:id/:action',component:EditModeloAvisoComponent}非常感谢!
export const ROUTES : Routes = [

    {path:'',component:AvisosComponent    },
    {path:'gerenciarModeloAviso', component:GerenciaModAvisoComponent },
    {path:'/editModeloAviso/:id/:action', component: EditModeloAvisoComponent  }   

]
<img src="../assets/editarOn.png" alt="Editar" [routerLink]="['/editModeloAviso',estrut.idAvisoEstrutura,'VIEW']" />