javascript - 获取新坐标后在 mapbox 上标记新位置
问题描述
我正在使用 Mapbox,用户可以在其中选择任何位置。我正在获取新位置,但无法在新位置上添加标记。下面是我的代码。
var map = new mapboxgl.Map({
container: 'map',
style: 'mapbox://styles/mapbox/streets-v11',
center: [data.Latitude, data.Longitude],
zoom: 12
});
map.on('click', function (e) {
var latitude = e.lngLat.lat;
var longitude = e.lngLat.lng;
console.log(latitude + " - " + longitude)
var marker = new mapboxgl.Marker()
.setLngLat([latitude, longitude])
.addTo(map);
});
解决方案
您似乎以与函数预期相反的顺序传递坐标:
var marker = new mapboxgl.Marker()
.setLngLat([latitude, longitude])
.addTo(map);
你可以试试这个:
var marker = new mapboxgl.Marker()
.setLngLat([longitude, latitude])
.addTo(map);
请让我知道这是否有帮助!
推荐阅读
- python - 为什么 scipy.ndimage.gaussian_filter 没有内核大小?
- linux - 如何检查守护程序是否作为脚本的一部分成功启动?
- flutter - Flutter:从 Firebase 实时数据库项目创建 GridView
- reactjs - 调用浏览器上的后退按钮时未调用 Componentdidmount-ReactJS
- java - Java 文件 I/O 问题:文件现在由 newBufferedWriter 写入
- sql - 在开始行的结束日期和结束时间列添加结束日期和时间值
- python - 使用 Python 输出重复值 ID 和非重复值的列表
- laravel - Laravel:具有相同位置和名称的多条路线
- keras - 实现SRCNN时获取卷积算法失败
- list - 测试嵌套列表中的对角相邻元素