Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 角度导航问题(路由器导航)_Angular_Typescript - Fatal编程技术网

Angular 角度导航问题(路由器导航)

Angular 角度导航问题(路由器导航),angular,typescript,Angular,Typescript,我在使用英语导航时遇到问题 我有一条如下的路线 { path: 'truckdetails/:lieferNr', component: TruckDetailComponent, data: { state: 'truckdetail' }, canActivate: [AuthguardService] }, 如果我像这样使用路由 this.router.navigat

我在使用英语导航时遇到问题

我有一条如下的路线

     {
            path: 'truckdetails/:lieferNr',
            component: TruckDetailComponent,
            data: { state: 'truckdetail' },
            canActivate: [AuthguardService]
        },
如果我像这样使用路由

this.router.navigate(['truckdetails', delivery.LIEFER_NR]);
如果我使用以下术语

this.router.navigate(['truckdetails', response.data]);
我得到的错误是他找不到路线。我想在我将anglular更新到新版本之前,它已经起作用了。但我知道我会犯错

Error: Cannot match any routes. URL Segment: 'truckdetails;lieferNr=00179324'
回复中还包含lieferNr

{timestamp: 1530014875302, status: 200, message: "QRCode Scanned", data: {…}}
data :{lieferNr: "00179324"}
message : "QRCode Scanned"
status : 200
timestamp : 1530014875302

response.data
包含
{lieferNr:“00179324”}
,一旦序列化,当您只需要
00179324
时,它将提供
lieferNr=00179324
。然后使用:

this.router.navigate(['truckdetails', response.data.lieferNr]);

请在app-routing.module.ts文件中指定所有应用程序路由,好吗?我这样问是因为您可能有另一条路由阻塞了定义的路由。是
响应.data
对象
{lieferNr:00179324}
?这不会解析为路线
卡车详情/00179324
;如您所见,它解析为未指定的路线
truckdetails
,带有可选参数
;lieferNr=00179324
。您需要
response.data.lieferNr
@jornsharpe,是的,这是http请求的一个对象。我建议阅读,它讨论了可以将参数传递给路由的各种方法以及不同的结果。您忘记了斜线符号truckdetails/