首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Openlayers-3 -可以重新加载单个层吗?

Openlayers-3 -可以重新加载单个层吗?
EN

Stack Overflow用户
提问于 2015-10-08 04:31:50
回答 1查看 667关注 0票数 0

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

所以不要使用map.render()或map.renderSync(),因为这些渲染只在滚动或更改视图后才会更改视图。

EN

回答 1

Stack Overflow用户

发布于 2015-10-09 23:17:25

要重新加载一个geojson向量层,您必须首先清除它,然后执行与第一个位置相同的操作:加载de layer并设置层来源:

代码语言:javascript
复制
vectorLayerSource.clear();
loadVectorLayer(url);

加载geojson层的步骤取决于您的配置,假设您在外部geojson文件中有它,您可以这样做(使用jquery):

代码语言:javascript
复制
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");
  });
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33001929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档