<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,当我点击任何地方时,我想得到和弦/占位符。我只想得到这个地方的详细信息,我使用了mapClick函数,但它并没有给我特定的位置,cords.Please,帮助我在任何地方点击并显示打开的位置。
发布于 2019-06-05 01:52:34
要获得placeId,您可以做的是侦听mapReady事件。当它启动时,您将得到映射的一个实例,然后您可以向其添加一个单击侦听器。当用户单击地图上的某个位置时,如果它是Google上的一个位置(AKA:一个"POI“或(感兴趣点)),那么您将得到一个包含该位置的placeId的对象。
map.component.html:
<agm-map (mapReady)="onMapReady($event)" ... ></agm-map>map.component.ts:
public onMapReady(map) {
map.addListener('click', (e) => {
...
});
}在上面的代码中,'e‘将是包含placeId的对象(如果用户单击某个位置)。如果用户没有单击某个位置,则不会返回placeId。
注意:我认为他们正在研究一种(特定于AGM的)方法,通过placeId事件返回mapClick,但是暂时--在实现和发布之前,这应该是可行的。
https://stackoverflow.com/questions/51929212
复制相似问题