Я работаю над угловым приложением, в котором реализовал Angular Google Maps (angular-maps.com). Когда я нажимаю на место на карте, оно открывает стандартное информационное окно карт Google. Мне нужно заменить это стандартное информационное окно на пользовательское информационное окно с некоторыми кнопками моего приложения. Я не знаю, как это сделать на угловых и угловых картах Google. Кто-нибудь знает, как манипулировать этим стандартным информационным окном, не допустить его открытия и сбора всей имеющейся на нем информации и поместить его в собственное информационное окно?
Я пытался реализовать javascript внутри ngZone, чтобы запустить его вне угла, но безуспешно, я попытался отыскать какую-то заранее подготовленную директиву в угловых картах, но не смог ее найти
это код, который инициализирует карту:
ngOnInit() {
this.mapsAPILoader.load().then(
() => {
const autocomplete = new google.maps.places.Autocomplete(this.searchElement.nativeElement, {types: ['establishment'] });
autocomplete.addListener('place_changed', () => {
this.ngZone.run(() => {
const place: google.maps.places.PlaceResult = autocomplete.getPlace();
if (place.geometry === undefined || place.geometry === null) { return; } else {
const poi: Poi = {
uid: place.place_id,
title: place.name,
coords: {lat: place.geometry.location.lat(), lng: place.geometry.location.lng()},
draggable: false,
};
this.temporaryMarker(poi);
}
});
} );
}
);
}
это моя функция, которая обрабатывает "mapClick" угловых карт Google:
mapClicked(e: MouseEvent) {
console.log('mapClicked()=>', e);
if (e.placeId) {
this.getPlaceDetails(e.placeId).subscribe(place => this.openInfoWindow(place));
}
this.clickedLat = e.coords.lat;
this.clickedLng = e.coords.lng;
this.infoWindowIsOpen = true;
const preventInfoWindow = // HERE IS WHERE I SUPPOSE THAT SHOULD HAVE MY CODE
// service.getDetails(request, this.openInfoWindow(place, status));
}
до сих пор, любой щелчок МАРКЕРОМ, которым я могу манипулировать его информационным окном, но это было легко. Что я не могу сделать, так это манипулировать информационными окнами из мест на картах Google, это стандартные точки интереса, которые карты Google показывают вам. Они должны быть в моем пользовательском интерфейсе, но мне нужно обрабатывать их информацию, предотвращать открытие стандартного информационного окна и открытие пользовательского информационного окна.