Chr*_*ix3 6 leaflet leaflet.draw
我无法使用Leaflet(0.7.7)/Leaflet.Draw(最新)将我的Layer属性转换为GEOJson对象的属性.我的工作流程是:
1创建地图: var map = L.map('#map', options);
2创建FeatureGroup: features= new L.FeatureGroup();
3添加到宣传单地图: map.addLayer(features);
4在draw:created活动中,我正在捕捉e.layer并添加一堆属性:
var layer = e.layer;
layer.properties = { Title: 'Hello' };
features.addLayer(layer);
geo_features = features.toGeoJSON();
但是,我geo_features在每个功能中总是有空属性属性,我无法弄明白!
iH8的初步答案几乎是正确的.
要指定将出现在矢量图层的GeoJSON的导出属性(即通过它的.toGeoJSON()方法),你必须填补其feature.type与feature.properties成员:
var myVectorLayer = L.rectangle(...) // whatever
var feature = myVectorLayer.feature = myVectorLayer.feature || {};
feature.type = "Feature";
feature.properties = feature.properties || {};
feature.properties["Foo"] = "Bar";
Run Code Online (Sandbox Code Playgroud)
现在myVectorLayer.toGeoJSON()返回一个有效的GeoJSON特征对象,表示为:
{
"type": "Feature",
"properties": {
"Foo": "Bar"
// More properties that may be pre-filled.
},
"geometry": // The vector geometry
}
Run Code Online (Sandbox Code Playgroud)