2017-09-06 11 views
0

これは、緯度と経度を渡す1つのtsファイルの関数です。今、私は他のコンポーネントでこれらのパラメータを取得する方法は、他のコンポーネントで長いこれらの緯度を取得する必要があります。角2の他のコンポーネントで複数のパラメータを設定する

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

緯度と経度を任意の区切り記号(/と。を除く)と連結する必要があります。たとえば、google mapsは '@ 45.4572583,4.4090734'というURLの座標を渡します。 – 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をデコードして緯度と経度を取得する必要があります。

それとも、クエリのparamsで引数を渡すことができます。

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を参照してください。

関連する問題