【问题标题】:Leaflet geosearch: return lat/lng from address found event传单地理搜索:从地址找到事件返回 lat/lng
【发布时间】:2016-02-13 20:19:46
【问题描述】:

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

虽然这些非常适合在找到时在地图上显示地址位置,但我还希望能够将结果中的坐标用于我在地图中包含的其他功能(例如,我已经编写了一个查找根据 Leaflet 的内置 locate 函数触发的 locationfound 事件,来自数据层的附近点)。

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

【问题讨论】:

    标签: javascript leaflet geocoding


    【解决方案1】:

    L.GeoSearch 插件在您的地图实例上触发它的事件。您需要监听geosearch_foundlocations 事件。触发事件时返回的对象包含一个 Locations 属性,该属性包含一个带有 L.GeoSearch.Result 对象的数组。每个对象有四个属性; LabelXYbounds

    代码示例:

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

    【讨论】:

    • 嗨。为什么在 3.2.1 版本中使用 geosearch_foundlocations 不起作用?如何做到这一点来达到搜索查询的结果?
    • @koderstory 请使用“geosearch/showlocation”事件
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多