这是图像,请参阅
<agm-map (mapClick)="mapClicked($event)" [latitude]="latitude" [longitude]="longitude" [scrollwheel]="false" [zoom]="zoom">
<agm-marker (markerClick)="mapClicked(place)" *ngFor="let place of searchplace" [iconUrl]="place.icon" [latitude]="place.geometry.location ? place.geometry.location.lat() : ''"
[longitude]="place.geometry.location ? place.geometry.location.lng() : ''">
</agm-marker>
</agm-map>
我正在使用 agm-map,我想在单击任何地方时获取坐标/位置 ID。 我只想得到这个地方绳子来获取地方细节。我使用了mapClick功能,但它没有给我特定的位置线。请帮助我获取电线/位置ID,每当我单击任何地方和信息窗口打开时。
获取placeId可以做的是侦听 mapReady 事件。当它触发时,您将获得地图的实例,然后您可以向其添加点击侦听器。当用户点击地图上的某个地点时,如果它是 Google 地图上的某个地点(又名:">POI"或(兴趣点((,那么您将返回一个包含该地点placeId的对象。
map.component.html:
<agm-map (mapReady)="onMapReady($event)" ... ></agm-map>
map.component.ts:
public onMapReady(map) {
map.addListener('click', (e) => {
...
});
}
在上面的代码中,"e"将是包含placeId的对象(如果用户单击了一个地点(。如果用户未单击某个地点,则不会返回任何地点 ID。
注意:我认为他们正在研究一种(特定于 AGM 的(方式通过mapClick
事件返回placeId,但目前 - 在实现和发布之前,这应该有效。