Bet*_*ide 2 leaflet leaflet.draw
我正在使用传单来显示地图,并使用传单绘制插件在该地图上绘制形状。
\n\n我有下面的代码(请参阅 plunker),它允许绘制形状。但一旦形状完成,它就消失了。
\n\n绘制后要使形状在地图上可见,缺少什么?
\n\n var mymap = L.map(\'mapid\').setView([47.2090048, 7.7746663], 15);\n\n L.tileLayer(\'https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token=pk.eyJ1IjoiZXJuc3RwIiwiYSI6ImNpcGdtMTUzOTAwMGV2Ymt3Z2JlYnMyejgifQ.gHxSIfBUM0-UiuWurWoEvQ\', {\n maxZoom: 18,\n attribution: \'Map data © <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, \' +\n \'<a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, \' +\n \'Imagery \xc2\xa9 <a href="http://mapbox.com">Mapbox</a>\',\n id: \'mapbox.streets\'\n }).addTo(mymap);\n\n var marker = L.marker([47.2090048, 7.7747663]).addTo(mymap);\n\n // Initialise the FeatureGroup to store editable layers\n var drawnItems = new L.FeatureGroup();\n mymap.addLayer(drawnItems);\n\n // Initialise the draw control and pass it the FeatureGroup of editable layers\n var drawControl = new L.Control.Draw({\n edit: {\n featureGroup: drawnItems\n }\n });\n mymap.addControl(drawControl);\nRun Code Online (Sandbox Code Playgroud)\n
您已经成功绘制了形状,但是这里缺少的是您没有在地图图层顶部显示绘制的形状,尽管您想要实现的是显示它。
您所要做的只是将绘制的图层添加到地图顶部。
例如
mymap.on('draw:created', function (e) {
var type = e.layerType,
layer = e.layer;
if (type === 'marker') {
// Do marker specific actions
}
// Do whatever else you need to. (save to db, add to map etc)
mymap.addLayer(layer);
});
Run Code Online (Sandbox Code Playgroud)
您可以将此代码添加到js. 这是取自文档的
| 归档时间: |
|
| 查看次数: |
2418 次 |
| 最近记录: |