gpt4 book ai didi

javascript - 传单错误 : Object function has no method 'createIcon' when creating custom icon markers in LayerGroup

转载 作者:行者123 更新时间:2023-11-29 22:22:39 25 4
gpt4 key购买 nike

我正在从 XML 流创建标记,并在其中设置自定义图标。我想让我的标记位于图层组中,这样我就可以支持关闭某种类型的所有标记。当我使用自定义图标向我的 map 添加标记(使用 GroupLayer)时,我收到以下错误:

Uncaught TypeError: Object function (){this.initialize&&this.initialize.apply(this,arguments)} has no method '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();

向 map 或图层组添加标记

var thisMarker = new L.Marker(markerLocation, {title: $(this).attr('name')});
targetLayerGroup.addLayer(thisMarker);
thisMarker.setIcon(targetIcon);

我试过先添加图层组来映射,然后再添加标记到图层组:

  1. 实例化图标变量
  2. GroupLayer 变量已实例化
  3. GroupLayers 添加到 map
  4. 使用图标选项创建标记
  5. 标记被添加到GroupLayer

我尝试先将标记添加到图层组,然后再将图层组添加到 map :

  1. 实例化图标变量
  2. GroupLayer 变量已实例化
  3. 使用图标选项创建标记
  4. 标记被添加到GroupLayer
  5. GroupLayers 添加到 map

最佳答案

当引用图标时,您需要在更新它们时使用括号而不是仅仅分配给变量...

case 'church':
targetLayerGroup = layerChurch;
targetIcon = new ChurchIcon();
break;

相对于:

case 'church':
targetLayerGroup = layerChurch;
targetIcon = ChurchIcon;
break;

关于javascript - 传单错误 : Object function has no method 'createIcon' when creating custom icon markers in LayerGroup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11488005/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com