2017-03-09 104 views
0

我正在使用Leaflet在离子应用程序中显示地图,我正在使用https://github.com/Leaflet/Leaflet.markercluster#customising-the-clustered-markers来启用群集。标记图标总是默认

我似乎无法让我的自定义图标显示,但我总是得到蓝色默认值。

首先我创建markerClusterGroup

var markers = L.markerClusterGroup({ 
    spiderfyOnMaxZoom: true, 
    showCoverageOnHover: true, 
    zoomToBoundsOnClick: true 
    }); 

然后,我创建的图标:

var myIcon = L.icon({ 
     iconUrl: '<myiconurl.png>' 
    }); 

我然后通过我需要显示在地图上的对象的阵列循环填充的标记阵列,并绑定一个弹出窗口[也可以放到每个标记上。

for (var i = 0; i < $scope.arrayOfVenues.length; i++) { 
    var name = $scope.arrayOfVenues[i].name; 
    var id = $scope.arrayOfVenues[i].venueID; 
    var image = $scope.arrayOfVenues[i].venueImageURL; 
    var distanceTo = "4 Miles Away"; 
    var popupContent = "<div style='height:200px;width:100%;position:relative;cursor:pointer;z-index:999999' nav-transition='ios' onclick='window.navDetails(" + id + ")'><img style='object-fit: cover;position:absolute;left:0;top:0;' height='200' width='100%' src='" + image + "'/><h3 style='color:#FFFFFF !important;position:absolute;z-index:100;bottom:3vh;left:14px;font-size:3vh;'>" + name + "</h3><h3 style='color:#FFFFFF !important;position:absolute;z-index:100;bottom:0;left:14px;font-size:2.5vh;'>" + distanceTo + "</h3></div>" 
    markers.addLayer(L.marker([ 
     $scope.arrayOfVenues[i].latitude, 
     $scope.arrayOfVenues[i].longitude, { 
     title: $scope.arrayOfVenues[i].name, 
     riseOnHover: true, 
     icon:myIcon 
     } 
    ]).bindPopup(popupContent, { 
     maxWidth: 300, 
     minWidth: 300, 
     minHeight: 300, 
     maxHeight: 300 
    })); 
    debugger 
    } 
    mymap.addLayer(markers); 

一旦显示在地图上,一切工作好,除了我还有默认标记图标。

任何提示?

+1

'“”'看起来像一个占位符,或者是它的文字? – stholzm

+0

对不起,我只是拿出网址发布在这里! – anthonyhumphreys

+1

啊,好的。另一件事:'myIcon'实际上是'barIcon'? – stholzm

回答

2

刚刚从看代码,我相信一个右括号是放错了地方:

markers.addLayer(L.marker([ 
    $scope.arrayOfVenues[i].latitude, 
    $scope.arrayOfVenues[i].longitude 
], { 
    title: $scope.arrayOfVenues[i].name, 
    riseOnHover: true, 
    icon:myIcon 
    } 
) 
+0

你绝对是圣人。即使我向你提供困惑,无用的代码,你仍然可以找到解决方案。谢谢!! – anthonyhumphreys