我是OpenLayers的新手,所以我有点迷失在这里。 我试图从kml矢量图层获取所有功能,但我还没有能够做到。我只是不明白我做错了什么。
这是我的代码:
var vector2 = new ol.layer.Vector({
source: new ol.source.Vector({
url: './energeticos.kml',
format: new ol.format.KML()
})
});
var features = vector2.getSource().getFeatures();
alert(features.length); //this alerts '0', but there's more than 50 features!!
for (var i in features) {
var feature = features[i];
var featureName = feature.get('name');
$("#containerLeft").append('<li>' + featureName + '</li>');
}
kml图层在地图上正确显示,正如我在代码中所提到的,当我使用getFeatures函数时,它没有得到任何东西。
任何帮助都会非常感激。
P.S。我会试着睡一会儿,所以我会在几个小时后回来。
答案 0 :(得分:1)
答案 1 :(得分:0)
您可以在控制台上单独输入vector2.getSource().getFeatures()
。似乎渲染KML是异步的。