【发布时间】:2017-07-18 14:44:16
【问题描述】:
我正在使用 google map api 获取用户的地理位置,检索 lat & lng 信息。我想将 lat、lng 传递给 Web api 服务并获取周围地址的 json 输出。为了从 web api 服务获取数据,我使用了可以正常工作的 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 库可以做类似的事情,我可以使用?请帮忙
【问题讨论】:
标签: javascript angular google-maps