我在地图上有多个标记,并且添加了以下侦听器,以在单击时将标记居中。
switch (Environment.UserConfiguration.RealDocumentPersistenceType)
{
case DocumentPersistenceType.Sql:
case DocumentPersistenceType.Disk:
container.Register<IDocumentService, DocumentService>();
break;
case DocumentPersistenceType.IManage:
container.Register<IDocumentService, ManageDocumentService>();
break;
default:
throw new ArgumentOutOfRangeException(); } }, Lifestyle.Transient);
}
对于从地图外部以特定标记为中心,我还有以下几点:
google.maps.event.addListener(marker, 'click', (function (marker, count) {
return function () {
this.map.setCenter(marker.getPosition() as google.maps.LatLng);
}
})(marker, count));
一切正常,除了标记聚簇时。如果标记隐藏在群集中,则centerFromTimeline()将不起作用,因为this.map为null。在这种情况下,有没有办法集中在集群上?
答案 0 :(得分:0)
所以我发现您可以获取聚类并在它们中搜索您的标记。
let inCluster
let clusters = await this.markerClusterer.getClusters()
for(let cluster of clusters){
let foundMarker = cluster.markers_.find(element => element === this.markers[i]);
if (foundMarker !== undefined)
inCluster = true;
break;
}