【发布时间】:2019-02-17 14:41:17
【问题描述】:
我已经尝试了一段时间使用ngx-leaflet 来实现这个leaflet tutorial。
在按照教程进行操作时,对于如何实现自定义控件或图例,绝对没有明确的 documentation。
var info = L.control();
info.onAdd = function (map) {
this._div = L.DomUtil.create('div', 'info'); // create a div with a class "info"
this.update();
return this._div;
};
// method that we will use to update the control based on feature properties passed
info.update = function (props) {
this._div.innerHTML = '<h4>US Population Density</h4>' + (props ?
'<b>' + props.name + '</b><br />' + props.density + ' people / mi<sup>2</sup>'
: 'Hover over a state');
};
info.addTo(map);
创建图例也是如此。
能否指出我正确的方向,尝试使用 ngx-leaflet lib 在 Angular 7 中实现它?
import { control, featureGroup, geoJson, icon, latLng, LatLngExpression, Map, Marker, marker, popup, tileLayer } from 'leaflet';
onMapReady(map: Map) {
this.map = map;
// create info control
let info = control(
{
onAdd: map => {
}
}
)
info.addTo(map);
我知道您需要执行类似this 的操作,但我不想添加圆形或形状,而是添加上面屏幕截图中的自定义控件以及图例。
【问题讨论】:
-
一般来说,你会按照 ngx-leaflet 自述文件来获取地图的参考。然后您可以像教程一样将自定义控件添加到地图中。
-
问题是没有关于如何添加自定义控件的明确文档。我尝试了很多方法,但最终导致自定义控件出现运行时错误。
-
你不能让 info = L.control();例如,因为这不能正常工作。也不确定要使用哪些导入。
标签: angular typescript leaflet ngx-leaflet