正如标题所说。我希望能够重新加载显示在地图上的图层。有没有办法(直接)做到这一点?
所以不要使用map.render()或map.renderSync(),因为这些渲染只在滚动或更改视图后才会更改视图。
发布于 2015-10-09 23:17:25
要重新加载一个geojson向量层,您必须首先清除它,然后执行与第一个位置相同的操作:加载de layer并设置层来源:
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");
});
}https://stackoverflow.com/questions/33001929
复制相似问题