以下代码显示了群集,但是当我单击任何群集时,它不会显示单个标记,而只是显示相同的群集。标记本身来自外部服务,它工作正常。
我也在地图上显示标记,这些标记不属于任何集群。
标记是fwtawesome标记btw,我没有在Chrome开发控制台中出现任何错误。
这是我的代码:
dt = MyService.getviewportpoints(nelat, nelon, swlat, swlon);
dt.then(
function (data){
//console.log(data);
if(markerArry.length >0){
for (var i = 0; i < markerArry.length; i++) {
markerArry[i].setMap(null);
}
markerArry = [];
}
for (var i = 0; i < data.data.pnglist.length; i++) {
var star = data.data.pnglist[i];
var myLatLng = new google.maps.LatLng(star.lat, star.lon);
var roto = 0;
if (star.marker_path == "fontawesome.markers.PLAY"){
roto = 270;
}
var marker = new google.maps.Marker({
position: myLatLng,
map: mapInstance,
icon:{
path: eval(star.marker_path),
scale: 0.2,
fillColor: star.marker_fillcolor,
fillOpacity: 0.7,
rotation: roto
}
});
markerArry.push(marker);
google.maps.event.addListener(marker, 'click', function () {
alert('info');
});
}
markerCluster = new MarkerClusterer(mapInstance, markerArry);
});
答案 0 :(得分:1)
我有同样的问题,我通过指定MarkerClusterer的maxZoom属性解决了这个问题:
var mcOptions = {maxZoom: 15};
var markerCluster = new MarkerClusterer(mapInstance, markerArry, mcOptions);
尝试不同的缩放值,看看哪种方式最适合您! 希望它有所帮助!