नीचे दिए गए कोड स्निपेट में, मैंने leaflet.draw प्लगइन सेट किया है। सुविधाओं (लाइनें, मार्कर, बहुभुज) जोड़ने के लिए ठीक काम करता है। संपादन और हटाने के लिए ठीक काम करता है। लेकिन रद्द करने का ऑपरेशन काम नहीं करता है (न ही सरल चौराहे परीक्षण करता है, लेकिन मैं इसके बिना जी सकता हूं)। प्लगइन स्थापित करने के लिए मैंने क्या गलत किया है?leaflet.draw ठीक से रद्द नहीं करता
(क्रोम V44, 1.0 बीटा 2, leaflet.draw (0.2.4-देव) पत्रक (यह भी पत्रक '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 सेटअप करने के लिए इस्तेमाल करते हैं
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);
}
आप एक बेला पर इस डाल सकता है:
आज के रूप में वहाँ Leaflet.draw का एक कांटा कि पत्रक 1.0 आर सी के खिलाफ विकसित किया जा रहा होने के लिए प्रकट होता है? –
मैं गलत था। यह पुस्तिका 7.7 में काम करता है, यह 1.0 बीटा 2 –
में काम नहीं कर रहा है आपका मतलब 0.7 है, अभी तक कोई 7.7 नहीं है। 1.0 आज भी एक रिलीज उम्मीदवार है। कृपया नीचे विस्तृत उत्तर देखें। – nothingisnecessary