TypeError:L.Control.Draw不是构造函数

Nis*_*ant 11 typescript ionic2 leaflet.draw

我想在我的ionic2应用程序中的leaflet map中绘制一个多边形,为此我找到了leaflet-draw插件,但我收到此错误TypeError:L.Control.Draw不是构造函数

我的代码看起来如此

this.map = L
  .map("map")
  .setView(this.latLng, 13)
  .on("click", this.onMapClicked.bind(this))

L.tileLayer("https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png")
  .addTo(this.map);

this.marker = L
  .marker(this.latLng, { draggable: true })
  .on("dragend", this.onMarkerPositionChanged.bind(this))
  .addTo(this.map);

var drawnItems = new L.FeatureGroup();
this.map.addLayer(drawnItems);
console.log(drawnItems);
var drawControl = new L.Control.Draw({

  edit: {
    featureGroup: drawnItems
  }
});
this.map.addControl(drawControl);
Run Code Online (Sandbox Code Playgroud)

小智 12

你需要添加到头部html CDN

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/leaflet.draw/0.4.2/leaflet.draw.css"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet.draw/0.4.2/leaflet.draw.js"></script>
Run Code Online (Sandbox Code Playgroud)

并添加到地图 { drawControl: true }

var map = L.map('mapid', { drawControl: true }).setView([25, 25], 2);
Run Code Online (Sandbox Code Playgroud)


Mah*_*our 5

您可以leaflet.draw从以下地址获取最新版本

https://cdnjs.com/libraries/leaflet.draw

版本 1.0.4

https://cdnjs.cloudflare.com/ajax/libs/leaflet.draw/1.0.4/leaflet.draw.css
https://cdnjs.cloudflare.com/ajax/libs/leaflet.draw/1.0.4/leaflet.draw.js
Run Code Online (Sandbox Code Playgroud)