gpt4 book ai didi

angular - Angular 谷歌地图中的反向地理编码

转载 作者:行者123 更新时间:2023-12-03 22:16:27 24 4
gpt4 key购买 nike

getAddress( lat: number, lng: number ) {
console.log('Finding Address');
if (navigator.geolocation) {
let geocoder = new google.maps.Geocoder();
let latlng = new google.maps.LatLng(lat, lng);
let request = { latLng: latlng };
geocoder.geocode(request, (results, status) => {
if (status === google.maps.GeocoderStatus.OK) {
let result = results[0];
let rsltAdrComponent = result.address_components;
let resultLength = rsltAdrComponent.length;
if (result != null) {
this.address = rsltAdrComponent[resultLength - 8].short_name;
} else {
alert('No address available!');
}
}
});
}
}

我正在尝试在我的 Angular 4 应用程序中使用反向地理编码。我正在使用 agm 将谷歌地图与 Angular 应用程序集成。

在 *.ts 中声明的 google 变量如下
declare let google: any;

但是当我使用时,我收到如下错误,

ERROR ReferenceError: google is not defined



请帮我解决问题。

这是component.ts
declare let google: any;
@Component({
selector: 'app-find-cycle',
templateUrl: './cmp.component.html',
styleUrls: ['./cmp.component.scss']
})

export class Cmp {
}

最佳答案

加载 map 后执行 getAddress() :

<agm-map (mapReady)="mapReady()" [latitude]="lat" [longitude]="lng" [zoom]="zoom" [styles]="styles">

mapReady() {
this.getAddress(...);
}

或添加 private mapsAPILoader: MapsAPILoader,对您的构造函数执行此操作
 this.mapsAPILoader.load().then(() => { ... });

关于angular - Angular 谷歌地图中的反向地理编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50272072/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com