当前位置:   article > 正文

OpenLayers-加载Geojson数据_openlayers 加载 geojson

openlayers 加载 geojson

 示例代码:

  1. var geojsonSource = new ol.source.Vector({
  2. url: './features.json',
  3. format: new ol.format.GeoJSON(),
  4. });
  5. var geojsonLayer = new ol.layer.Vector({
  6. name: 'geojson图层',
  7. source: geojsonSource,
  8. style: new ol.style.Style({
  9. fill: new ol.style.Fill({
  10. color: 'rgba(10, 20, 255, 0.1)',
  11. })
  12. }),
  13. zIndex: 3,
  14. });
  15. map.addLayer(geojsonLayer);

这里的url地址可以是本地geojson文件,也可以是网络geojson格式的数据服务。加载完成后可以对数据要素进行遍历

  1. pointFeatureSource.getFeatures().forEach(feature => {
  2. console.log(feature);
  3. })

值得注意的是,加载网络服务的行为(如geoserver发布的数据服务)属于异步,不能直接获得要素。

下面代码是我解决此问题的一种思路,

通过VectorSource的featuresloadend事件(在要素完成加载时触发)

  1. pointFeatureSource.on('featuresloadend', function (e) {
  2. e.features.forEach((item) => {
  3. console.log(item)
  4. })
  5. });
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号