Javascript 为什么路由器链接不起作用,尽管我使用与href相同的组件链接,但它起作用?
我在angular 7应用程序上工作我的问题是使用routerLink时路由不工作 但当使用href时,它会起作用 我使href链接具有参数值报告idJavascript 为什么路由器链接不起作用,尽管我使用与href相同的组件链接,但它起作用?,javascript,typescript,angular-material,angular-components,angular7-router,Javascript,Typescript,Angular Material,Angular Components,Angular7 Router,我在angular 7应用程序上工作我的问题是使用routerLink时路由不工作 但当使用href时,它会起作用 我使href链接具有参数值报告id <a href="/pages/report/reportdetails?id={{subrep.reportID}}"> 在href的同一位置使用路由器链接时,我会执行以下操作: <a [routerLink]="['/pages/report/reportdetails/id=,subrep.reportID']">
<a href="/pages/report/reportdetails?id={{subrep.reportID}}">
在href的同一位置使用路由器链接时,我会执行以下操作:
<a [routerLink]="['/pages/report/reportdetails/id=,subrep.reportID']">
应用程序路由模块:
{path:'report',component:ReportcategoryComponent,children:[
{path:'reportdetails',component:ReportdetailsComponent},
{path:'reportdetails/:id',component:ReportdetailsComponent},
]},
如何解决这个问题
我需要路由器链接使路由与href完全相同
第一个线程的结果如下:
为路由执行的结果代码为
localhost:4200/pages/report/reportdetails/3
但我也需要它
localhost:4200/pages/report/reportdetails?id=3
因此,我所更改的是将属性
subrep.reportID
作为字符串传递,这就是为什么它会导航到您看到的结果。试试这个:
<a [routerLink]="['/pages/report/reportdetails', subrep.reportID ]">
您可以阅读更多关于路由的结果代码,但我需要它,因为我需要它change@aboelham这称为
queryParams
。这就是你如何传递查询参数@aboelham,就像sameer Khan提到的,它叫做查询参数,我用it@aboelham很高兴它有帮助,如果有,请将答案标记为已解决。非常感谢。
localhost:4200/pages/report/reportdetails?id=3
<a [routerLink]="['/pages/report/reportdetails', subrep.reportID ]">
<a [routerLink]="['/pages/report/reportdetails']" [queryParams]="{id: subrep.reportID}" >