2015-11-23 7 views
6

Aşağıdaki kod parçacığında, leaflet.draw eklentisini kurdum. Özellikler (çizgiler, işaretleyiciler, çokgenler) eklemek için iyi çalışıyor. Düzenleme ve silme için iyi çalışıyor. Ancak iptal işlemi çalışmıyor (basit kesişim testi değil, ancak onsuz yaşayabiliyorum). Eklentiyi ayarlamak için yanlış yaptığım bir fikrin var mı?leaflet.draw düzgün şekilde iptal edilmiyor

(Krom V44, 1.0 Beta 2, leaflet.draw (0.2.4-dev) broşürü (ayrıca broşüründe '0.7.7') başarısız görünüyor Burada

hatadır.

Uncaught TypeError: Cannot read property '0' of undefined 
L.Polyline.L.Path.extend._projectLatlngs @ leaflet-src.js:5535 
L.Polyline.L.Path.extend._projectLatlngs @ leaflet-src.js:5547 
L.Polyline.L.Path.extend._projectLatlngs @ leaflet-src.js:5547 
L.Polyline.L.Path.extend._project @ leaflet-src.js:5519 
L.SVG.L.Renderer.extend._updatePath @ leaflet-src.js:6042 
L.Path.L.Layer.extend.redraw @ leaflet-src.js:5130 
L.Polyline.L.Path.extend.setLatLngs @ leaflet-src.js:5411 
L.EditToolbar.Edit.L.Handler.extend._revertLayer @ leaflet.draw-src.js:2759 
(anonymous function) @ leaflet.draw-src.js:2716 
L.LayerGroup.L.Layer.extend.eachLayer @ leaflet-src.js:4865 
L.EditToolbar.Edit.L.Handler.extend.revertLayers @ leaflet.draw-src.js:2715 
L.EditToolbar.L.Toolbar.extend.disable @ leaflet.draw-src.js:2578handler @ leaflet-src.js:6953 
burada

ve ben leaflet.draw kurulum için kullanmak koddur

Leaflet.draw eklentinin sürümü kullandığınız el broşürü sürümüyle uyumlu değil Yani
 var theMap; 
    var mapLayer; 
    var carLayer; 
    var drawLayer; 
    var drawControl; 
    var trackerButton; 
    .... 
     this.setupDraw(); 

     theMap = L.map('mapCanvas', { 
      center: mCityCenter, 
      zoom: 20, 
      layers: [osmLight, mapLayer, carLayer, drawLayer] 
     }); 
     theMap.on("draw:created", this.addDrawing); 
     .... 
    this.setupDraw = function() { 
     drawLayer = new L.FeatureGroup(); 

     drawControl = new L.Control.Draw({ 
      draw: { 
       polygon: { 
        allowIntersection: false, // Restricts shapes to simple polygons 
        showArea: true, 
        drawError: { 
         color: '#e1e100', // Color the shape will turn when intersects 
         message: '<strong>Oh snap!<strong> you can\'t draw that!' // Message that will show when intersect 
        } 
       } 
      }, 
      edit: { 
       featureGroup: drawLayer 
      } 
     }); 
    } 
    this.addDrawing = function (e) { 
     var type = e.layerType; 
     var layer = e.layer; 

     if (type === 'marker') { } 
     drawLayer.addLayer(layer); 
    } 
+1

bir keman bu koyabilir misin https://github.com/Leaflet/Leaflet.draw/tree/leaflet-master: Bugün itibariyle

Talimatı 1.0 RC karşı geliştiriliyor Leaflet.draw bir çatal olacaksa görünüyor? –

+0

Yanılıyordum. Bu 7.7 broşürde çalışıyor, 1.0 beta 2 –

+0

çalışmıyor. 0.7 demek, henüz 7.7 yok. 1.0 bugün itibariyle hala bir adaydır. Lütfen aşağıdaki ayrıntılı cevaba bakınız. – nothingisnecessary

cevap