知道KML文件何时加载并添加了功能(OpenLayers3)?

问题描述:

我看到ol.source.KML(取消“仅稳定”)会触发事件addfeature, changeremovefeature。但是,我只需要知道何时通过网络检索到KML并添加了所有功能。在OpenLayers 3中是否有像“加载”或类似的事件?知道KML文件何时加载并添加了功能(OpenLayers3)?

我需要在添加KML时执行一些代码。之后等待document.ready是不够的,因为KML文件被加载(通过网络)。

收听change事件,检查源state是否为ready,然后做你想做的事,不要忘记注销你的听众。

var key = source.on('change', function() { if (source.getState() == 'ready') { source.unByKey(key); // do something with the source } });