【问题标题】:Mapbox GL-JS: How do I update a marker position?Mapbox GL-JS:如何更新标记位置?
【发布时间】:2021-01-17 23:30:42
【问题描述】:

我使用以下代码在我的地图上创建了一个标记实例,但我无法弄清楚如何更新位置。我在这里得到了关于 SO 的帮助,并试图查看 Mapbox 文档,但无济于事。这是我当前的代码:

var el = document.createElement('div');
el.className = 'marker';
el.id = 'marker1';
el.style.backgroundImage ='url(images/marker.png)';
el.style.width = '10px';
el.style.height = '10px';

new mapboxgl.Marker(el)
.setLngLat([-99, 30])
.addTo(map);

这是我的函数,可以更新地图上标记的位置:

function setMarker()
{
    marker1.setLngLat([-93.50, 30]);
}

但是,在调用该函数时,我只会在控制台中收到以下错误:

marker1.setLngLat is not a function

我做错了什么?

【问题讨论】:

    标签: mapbox mapbox-gl-js


    【解决方案1】:

    您没有定义marker1 变量。你必须这样做。确保您定义marker1 变量的范围与方法相同

    let marker1 = new mapboxgl.Marker(el)
    .setLngLat([-99, 30])
    .addTo(map);
    

    那么你的方法setMarker就可以了

    【讨论】:

      猜你喜欢
      • 2016-12-10
      • 1970-01-01
      • 2018-11-26
      • 2019-10-29
      • 2016-11-08
      • 2022-07-21
      • 1970-01-01
      • 2020-06-08
      • 1970-01-01
      相关资源
      最近更新 更多