【问题标题】:Getting the lat/long of the address searched with mapbox on the leaflet map获取在传单地图上使用 mapbox 搜索的地址的纬度/经度
【发布时间】:2021-06-14 13:28:17
【问题描述】:

我有这样的场景。用户正在输入目标地址。他选择输入下方的地址之一。并且想记录下这个地址的经纬度。我正在使用 mapbox api。我怎样才能做到这一点?我在文档中找不到或看到它。

HTML:

    <div class="col-md-12">
      <div class="row">
      <div class="col-md-12">
         <label class="control-label geocoder" for="geocoder">Address</label>
        <div id="geocoder" class="geocoder"></div>             
      </div>
      </div>
    </div>

JS:

<script type="text/javascript">
accessToken = 'xxxxxxxx';
    
var mapboxTiles = L.tileLayer('https://api.mapbox.com/styles/v1/mapbox/streets-v11/tiles/{z}/{x}/{y}?access_token=' + accessToken, {
       attribution: '© <a href="https://www.mapbox.com/feedback/">Mapbox</a> © <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>',
       tileSize: 512,
       zoomOffset: -1
});

var map = L.map('map')
  .addLayer(mapboxTiles)
  .setView([39.525247, 34.160501], 6);
var geocoder = new MapboxGeocoder({
accessToken: accessToken,
mapboxgl: mapboxgl
});
document.getElementById('geocoder').appendChild(geocoder.onAdd(map));
</script>

单击搜索输入下的地址会在地图上显示该位置。当我点击那个地址时,我想提醒地址的经纬度。我该怎么做?谢谢。

【问题讨论】:

    标签: javascript leaflet mapbox geocoding mapbox-api-geocoding


    【解决方案1】:

    我解决了我的问题。我写下任何人都需要帮助的答案。

    accessToken = 'xxxxxxxx';
        
    var mapboxTiles = L.tileLayer('https://api.mapbox.com/styles/v1/mapbox/streets-v11/tiles/{z}/{x}/{y}?access_token=' + accessToken, {
           attribution: '© <a href="https://www.mapbox.com/feedback/">Mapbox</a> © <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>',
           tileSize: 512,
           zoomOffset: -1
    });
    
    var map = L.map('map')
      .addLayer(mapboxTiles)
      .setView([39.525247, 34.160501], 6);
    var geocoder = new MapboxGeocoder({
    accessToken: accessToken,
    mapboxgl: mapboxgl
    });
    document.getElementById('geocoder').appendChild(geocoder.onAdd());
    geocoder.on('result', e => {
      console.log(e.result)
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多