我正在尝试将 KML 文件导入传单并使其可编辑以进行传单绘制。我正在使用 Leaflet-omnivore 导入 KML。
<script src='https://api.mapbox.com/mapbox.js/plugins/leaflet-omnivore/v0.2.0/leaflet-omnivore.min.js'></script>
var kmlFile = omnivore.kml('Point.kml')
如果我添加 kmlFile 来映射它可以完美地工作,但为了使形状可编辑,我需要将图层添加到 drawItems
var drawnItems = new L.FeatureGroup();
omnivore.kml('Point.kml').addTo(drawnItems);
但是我收到一条错误消息:
类型错误:i.editing 未定义。
当我尝试访问图层坐标以自己创建对象并将它们添加到drawedItems时,我似乎无法这样做,因为我找不到访问对象坐标的方法。
当我尝试访问图层时,它们显示为空
console.dir(omnivore.kml('Point.kml').getLayers());
但是当我检查杂食 kml 对象时,我可以看到 _layers 包含对象和坐标。
console.dir(omnivore.kml('Point.kml'));
但是在执行 getLayers 方法时,layers 数组显示为空。
有什么建议么?