2017-09-06 75 views
0

這是一個ts文件中的一個函數,我傳遞的是經度和緯度。現在我必須在其他組件中獲取這些經緯度,以便如何在其他組件中獲取這些參數。如何獲取角度2中的其他組件中的多個參數

routeWithData(id, latitude, longitude) 
    { 
     //console.log(latitude, longitude); 
     this.router.navigate(['/provider/bookings/'+id+'/details/map-location/'+latitude+'/'+longitude]);  
    } 
+0

你只需要連接經緯度與任何分隔符(當然不包括/和)。例如谷歌地圖在URL中傳遞座標爲'@ 45.4572583,4.4090734' – StephaneM

+0

我應該怎麼做。 –

回答

0

,如果你有router.navigate(導航[ '/ someroute',{someProperty: 「someValue中」}]

關注這個:

constructor(routeParams: RouteParams){ let myPassedData: any=routeParams.params;console.log(myPassedData.someProperty); #Prints"SomeValue"} 

你可以得到怎樣的想法從這裏使用它: how to pass RouteData via Router.navigate in angular2

0

您可以通過在URL中傳遞所有參數導航

routeWithData(id, latitude, longitude) { 
     //console.log(latitude, longitude); 
     this.router.navigate(['/provider/bookings/'+id+'/details/map-location/'+latitude+','+longitude]);  
    } 

在這種情況下,您將不得不解碼URL以獲取緯度和經度。

或者你也可以傳遞參數的查詢參數:

routeWithData(id, latitude, longitude){ 
     //console.log(latitude, longitude); 
     lat latlon = latitude + ', ' + longitude; 
     this.router.navigate(['/provider/bookings/'+id+'/details/map-location/', { queryParams: { latlon: latlon } }]);  
    } 

詳情請參閱https://angular.io/guide/router#query-parameters-and-fragments

相關問題