【问题标题】:Append Key/Value pair to L.Control.layer in Leaflet将键/值对附加到 Leaflet 中的 L.Control.layer
【发布时间】:2017-06-27 18:58:43
【问题描述】:

这是我的“问题”的简化示例。

我有一个这样的键/值对列表:

var baseMaps = {"thing1": thing1,
                 "thing2": thing2};

var overlayMaps = {"OverLay1": link to overlay2
                    "Overlay2": link to overlay2};

等等…………

我可以使用此代码添加到我的对象列表中:

overlayMaps["New Item"] = link to new item;

我在控制台上确认它已添加到 overlayMaps 列表中。

问题:它不像所有其他的那样显示在地图侧面的框中。它们在一个带有小复选标记的盒子里,可以打开和关闭它们。我是否缺少一些代码来执行此操作?看来我需要一种方法来刷新图层组列表。

【问题讨论】:

    标签: javascript leaflet controls layer


    【解决方案1】:

    假设您的其余代码与documentation 中的示例相同。

    L.control.layers(baseLayers, overlays).addTo(map);
    

    问题是您丢失了对控件实例的引用,因为没有将它分配给任何东西。由于 addTo 方法是可链接的,它会给你控制权。

    var layerControl = L.control.layers(baseLayers, overlays).addTo(map);
    

    现在您可以在代码中访问它并运行它的方法,例如 layerControl.addBaseLayer

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-26
      • 2015-11-01
      相关资源
      最近更新 更多