0
我得到用户的地理位置使用谷歌地图API,检索经纬度& lng信息。我想将lat,lng传递给web api服务并获取周围地址的json输出。为了从web api服务获取数据,我使用了可以正常工作的angular2代码。获取地理位置和订阅服务Angular2 +
下面是详细的代码:)
data.service.ts file:
fetchData(lat: number, lng: number) {
return this._http.get('/url?lat=' + lat + '&lon=' + lng)
.map((response: Response) => response.json());
}
app.component.ts
ngOnInit({
var lat;
var lng;
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function (position) {
lat = position.coords.latitude;
lng = position.coords.longitude;
});
if ((lat != null) && (lng != null)) {
this._dataService.fetchData(lat, lng).subscribe(res => {
this.dObj = res;
});
}
}
上面的代码不工作。我试图玩弄代码。 fetchData()被调用之前(我相信自从它的异步),并以某种方式我无法将lat,lng传递给服务。
有没有适当的方法来实现这一目标?有什么其他的方式来做到这一点?是否有任何可以使用类似的东西的angular2库?请帮助