我在 React-redux 项目中使用 MarkerClusterer 为所有公司绘制标记。我有 3 个公司有相同的地址。当我放大地图时,我可以看到数字 3(标记簇),当进一步放大时,我只能看到 1 个标记(对于所有 3 家公司)。我需要显示单个标记(从具有相同地址的markerClusterer 中筛选公司),并且当单击标记时,打开对话框以显示公司详细信息。最初加载地图时,会渲染标记(代码如下:)
companies.map((company) => {
this.marker = new google.maps.Marker({
map: map,
position: {lat: parseFloat(company.latitude),
lng: parseFloat(company.longitude)},
icon: {url:'/src/images/blue_marker.png',
size: new google.maps.Size(30, 30)},
title: company.name + ' ' + company.vacancy.vacancy
});
options = {
imagePath: '/src/images/m',
maxZoom: 15,
zoomOnClick: false
};
var markerCluster = new MarkerClusterer(map, markers, options);
markerCluster.setMaxZoom(15);
https://medium.com/@robinttt333/google-maps-marker-clustering-part-2-a08f2789bc26
上面的链接会对您有所帮助。问题是,当多个活动等出现在同一位置时,我们希望在用户单击群集时显示群集,然后映射缩放以查看所有活动或等标记。
所以上面的博客非常有帮助,你可以查看一下。