我正在从XML流创建标记,并在其中设置自定义图标。我想在组图层中放置我的标记,以便我可以支持关闭某种类型的所有标记。当我使用自定义图标向我的地图添加标记(使用GroupLayer)时收到以下错误:
未捕获的TypeError:对象函数 (){this.initialize&& this.initialize.apply(this,arguments)}没有 方法'createIcon'
var ATVIcon = L.Icon.extend({
iconUrl: './markers/atv.png',
shadowUrl: '',
iconSize: new L.Point(27, 17),
shadowSize: new L.Point(0, 0),
iconAnchor: new L.Point(22, 22),
popupAnchor: new L.Point(-3, -76)
});
var layerATV = new L.LayerGroup();
将标记添加到地图或图层组
var thisMarker = new L.Marker(markerLocation, {title: $(this).attr('name')});
targetLayerGroup.addLayer(thisMarker);
thisMarker.setIcon(targetIcon);
我尝试首先添加组图层,然后将图层添加到图层组
我尝试首先将标记添加到图层组,然后添加组图层以进行贴图:
答案 0 :(得分:3)
在引用图标时,您需要在查看它们时使用括号,而不是仅仅分配给变量......
case 'church':
targetLayerGroup = layerChurch;
targetIcon = new ChurchIcon();
break;
相反:
case 'church':
targetLayerGroup = layerChurch;
targetIcon = ChurchIcon;
break;