2015-11-23 20 views
6

以下のコードスニペットで、leaflet.drawプラグインをセットアップしました。フィーチャ(線、マーカー、ポリゴン)の追加には問題ありません。編集と削除に適しています。しかし、キャンセル操作は機能しません(単純な交差テストはしませんが、私はそれなしで暮らすことができます)。私がプラグインをセットアップするのに間違ったことは何ですか?leaflet.drawが正しくキャンセルされない

(クロームV44は、1.0ベータ2、leaflet.draw(0.2.4-devのを)リーフレット(もリーフレット '0.7.7')に失敗するようだ。ここ

はエラーです:。

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 

と、ここで私はセットアップにleaflet.drawプラグインのバージョンは、使用しているリーフレットのバージョンと互換性がないことをleaflet.draw

 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

あなたはフィドルでこれを置くでしhttps://github.com/Leaflet/Leaflet.draw/tree/leaflet-master:今日のよう

リーフレット1.0 RCに対して開発されているLeaflet.drawのフォークがあるように見えるのでしょうか? –

+0

私は間違っていました。リーフレット7.7で動作し、1.0ベータ2で動作していません –

+0

あなたは0.7を意味し、7.7はまだありません。 1.0はまだ今日のリリース候補です。以下の詳細な回答をご覧ください。 – nothingisnecessary

答えて

関連する問題