Leaflet 当我指定位置为';时,为什么我的传单控件出现在地图的左下角;左上角';?

Leaflet 当我指定位置为';时,为什么我的传单控件出现在地图的左下角;左上角';?,leaflet,Leaflet,我创建了一个自定义控件并将其添加到我的传单地图中。为什么即使我指定了“左上角”的位置,它也会出现在左下角 L.Control.Custom = L.Control.extend({ options: { position: "topleft" }, onAdd: function(myMap) { // Add reference to map var div = L.DomUtil.create( "div",

我创建了一个自定义控件并将其添加到我的传单地图中。为什么即使我指定了“左上角”的位置,它也会出现在左下角

  L.Control.Custom = L.Control.extend({
    options: {
      position: "topleft"
    },
    onAdd: function(myMap) {
      // Add reference to map
      var div = L.DomUtil.create(
        "div",
        "leaflet-bar info hit-count-control"
      );
      return div;
    },
    onRemove: function(myMap) {
      // Remove reference from map
      delete myMap.hitCountControl;
    },
});

您必须使用
L.setOptions(此选项)更新控制选项


您已指定位置
position:“bottomleft”
而不是
topleft
似乎按预期工作抱歉,我的失败,它必须是
初始化(选项){
你所说的更正到底是什么意思?你建议的新代码是什么?我已经更新了上面的代码。下面是一个例子。当你创建控件并添加参数(选项)时对于它,如
position
它将覆盖默认值。在该示例中,控件位于左上角,即使代码指定了“bottomleft”
  L.Control.Custom = L.Control.extend({
    options: {
      position: "bottomleft"
    },

    initialize(options) {
        L.setOptions(this, options);
    },
    onAdd: function(myMap) {
      // Add reference to map
      var div = L.DomUtil.create(
        "div",
        "leaflet-bar info hit-count-control"
      );
      return div;
    },
    onRemove: function(myMap) {
      // Remove reference from map
      delete myMap.hitCountControl;
    },
});
new L.Control.Custom({position: 'topleft'});