Openlayers-3-是否可以重新加载单个层?

Openlayers-3-是否可以重新加载单个层?,openlayers-3,Openlayers 3,正如标题所说。我希望能够重新加载地图上显示的图层。有没有办法直接做到这一点 因此不要使用map.render或map.renderSync,因为这些渲染仅在滚动或更改视图后更改视图。要重新加载geojson矢量层,必须先清除它,然后执行与第一步相同的操作:加载de层并设置层源: vectorLayerSource.clear(); loadVectorLayer(url); 加载geojson层的步骤取决于您的配置,假设您将其保存在外部geojson文件中,您可以使用jquery这样做: fu

正如标题所说。我希望能够重新加载地图上显示的图层。有没有办法直接做到这一点


因此不要使用map.render或map.renderSync,因为这些渲染仅在滚动或更改视图后更改视图。

要重新加载geojson矢量层,必须先清除它,然后执行与第一步相同的操作:加载de层并设置层源:

vectorLayerSource.clear();
loadVectorLayer(url);
加载geojson层的步骤取决于您的配置,假设您将其保存在外部geojson文件中,您可以使用jquery这样做:

function loadVectorLayer(url) {
  $.when(
    $.getJSON(url, {})   
    .done (function(data) { 
      var features = (new ol.format.GeoJSON()).readFeatures(data);
      vectorLayerSource.addFeatures(features);
    })  
    .fail(function(data) {    
      console.log("geojson error in "+url);  
    })
  ).then(function() { 
      console.log("geojson file "+url+" loaded");
  });
}

您希望重新加载哪种层/源?一个巨大的GeoJSON多边形向量