javascript - 如何使用 Leaflet Control Geocode?
问题描述
我计划在leaflet
我的应用程序中添加一个控制地理编码器或一个搜索框。尽管我编写了所需的代码,但它没有显示任何地理编码器,我也不知道出了什么问题。我提供了我的index.html
文件的一部分,包括相关代码。
<link rel="stylesheet" href="{% static 'geocoder/Control.Geocoder.css' %}" />
<script type="text/javascript" src="{% static 'geocoder/Control.Geocoder.js' %}"></script>
<script>
var geocoder = L.Control.geocoder().on('markgeocode', function(event) {
var center = event.geocode.center;
L.marker(center).addTo(map);
map.setView(center, map.getZoom());
}).addTo(map);
</script>
解决方案
您必须设置地理编码“类型”:类型
var _geocoderType = L.Control.Geocoder.nominatim();
var geocoder = L.Control.geocoder({
geocoder: _geocoderType
}).addTo(map);
geocoder.on('markgeocode', function(event) {
var center = event.geocode.center;
L.marker(center).addTo(map);
map.setView(center, map.getZoom());
});
推荐阅读
- html - CSS中具有相对位置的文本重叠图像?
- javascript - 使用python获取所有javascript变量字符串值
- javascript - navigator.clipboard.readText() 在 js 中不起作用
- javascript - 使用 webpack 构建应用程序时如何更改 NODE_ENV?
- javascript - 为什么这个组件创建者返回未定义?
- vue.js - vuejs 组件中的 video-js 问题。按下播放按钮后,class="video-js" 正在加载
- python - 如何分离每个肌腱最深层,对其应用密集层并合并结果?
- android - 滑动屏幕有效,但按标签不起作用 android tab-layout
- linux - bash 本身生成的静音错误
- angular - 带有 IVY 的 Angular 10 装饰器