从 mapbox 中检索没有地图的地理编码器的值

Retrieve value of the geocoder whithout map from mapbox

我正在使用 mapbox 中的地图地理编码器,它在 mapbox 文档的示例中使用。

但是,我无法获取返回的值。

我需要用户选择的地址,如果可能的话,在 gps longitude/latitude 字符串中。

这是我的代码:

<div id="geocoder" name="geocoder" class="form-control txt-field"></div>

<script>
    mapboxgl.accessToken = 'MY TOKEN API';
    var geocoder = new MapboxGeocoder({
        accessToken: mapboxgl.accessToken,
        placeholder: 'point de depart'

    });

    document.getElementById('geocoder').appendChild(geocoder.onAdd());
    geocoder.on('results', function (results) {
        document.getElementById('mapr').value = (results);
    })
</script>

每当更新建议列表时都会调用 results 事件,以得到用户 selected 的结果然后你应该听 result事件。

gecoder.on('result', e => {
  console.log(e.result)
})

我正在更新官方示例以在 https://github.com/mapbox/mapbox-gl-js-docs/pull/313/files

上演示这一点