Mapbox GL-JS:我如何更新标记位置?



我使用下面的代码在我的地图上创建了一个标记实例,但是我无法弄清楚如何更新位置。我在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

我做错了什么?

您没有定义marker1变量。你必须这样做。确保您定义的marker1变量的作用域是相同的方法是

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

那么你的方法setMarker将工作

相关内容

  • 没有找到相关文章

最新更新