javascript - 传单在显示位置重复时提供无效的 Lng/Lat 坐标
问题描述
问题
传单提供的 lng/lat 不是 GPS 坐标吗?我有办法将其转换为 GPS 坐标还是传单中的错误?
重现步骤
设置重复的地图。单击重复部分,单击事件将返回不同且通常无效的坐标。
预期行为
将为每个 GPS 位置提供正确的(重复的)坐标,无论它是否在显示器上重复。
显示错误的代码
只需绑定一个点击事件
L.map(name, {fullscreenControl: true}).fitWorld().zoomIn().on("click", selectorConfirm);
function selectorConfirm = function(e) {
console.log('selected:'+e.latlng.lat+','+e.latlng.lng);
}
重现问题的最小示例
https://www.hikerock.com/rock/210/
点击地图->控制台日志将输出传单提供的gps坐标。
代码非常简单,如果您需要访问它:
https://www.hikerock.com/plugin/map/js/map.min.js?cache=6x3cWuxp
function map() => inits leaflet map.prototype.selectorConfirm () -> 是收集事件,是在做console.logging
解决方案
看起来这就是 Leaflet 的设计方式:
https://github.com/Leaflet/Leaflet/issues/1885
它可以通过使用来解决:
e.latlng.wrap();
e.latlng.wrap().lat;
推荐阅读
- c++ - CMake:编译生成可执行和可链接库
- blazor - 在 Blazor 中检测热重载的最佳方法是什么
- python - Keras-logits 和标签必须具有相同的形状 ((None, 1) vs (None, 363))
- amazon-web-services - Terraform 粘合连接,可避免在应用时覆盖 connection_properties
- r - R - 如何在 R 中读取多个 png 文件并编织成 pdf?
- npm - 无法确定 NPM、IMGMIN 和 SVGO 以保留/添加 SVG 视图框
- android - 您如何发现 android apk 实现了哪些蓝牙服务?
- javascript - 如何从同一个数组中填充多个下拉列表但不重复填充它们?
- c# - 如何使用 automapper 将 ODataQueryOptions 转换为 ODataQueryOptions
- node.js - 如何根据操作系统下载不同版本的电子