javascript - 传单地理搜索 : return lat/lng from address found event

标签 javascript leaflet geocoding

我使用很棒的 Leaflet 插件进行地理编码,例如 https://github.com/smeijer/L.GeoSearch

虽然这些非常适合在找到时在 map 上显示地址位置,但我也希望能够将结果中的坐标用于我包含在 map 中的其他函数(例如,我编写了一个可以找到基于 Leaflet 内置 locate 函数触发的 locationfound 事件从数据层获取附近的点)。

我知道答案(可能)在于从地理搜索插件访问事件,但这有点超出了我目前的技能范围。非常欢迎任何帮助。

最佳答案

L.GeoSearch 插件会在您的 map 实例上触发事件。您需要监听 geosearch_foundlocations 事件。事件触发时返回的对象包含一个 Locations 属性,其中包含一个包含 L.GeoSearch.Result 对象的数组。每个对象有四个属性; 标签XY边界

代码示例:

map.on('geosearch/showlocation', function (e) {
    e.Locations.forEach(function (Location) {
        // Location.Label = full address
        // Location.X = longitude
        // Location.Y = latitude
        // Location.bounds = boundaries
    });
});

关于javascript - 传单地理搜索 : return lat/lng from address found event,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35384869/

相关文章:

javascript - 禁用/启用按钮 - jquery

javascript - 在javascript中制作表单时如何获得间距?

javascript - 如何在数据库中存储和重用传单 LatLngs

R/leaflet - 绘制多个多边形

javascript - 传单 js : Uncaught TypeError: Cannot read property 'addLayer' of undefined

javascript - 使用 Google Autocomplete API 根据位置名称获取经纬度

javascript - 新日期和+新日期有什么区别?

javascript - 如何在 express.js 中使用 handlebars-helpers 库?

php - 如何确定 PHP 字符串是否仅包含纬度和经度

google-maps - Google Geocoder 缺少类型地址组件