0

ol.layer.VectorTile使用 openlayers 4.2.0使用层时,我遇到了一个奇怪的问题。

对于ol.source.VectorTile我正在使用 atileLoadFunction对我的 tileGrid 中的图块发出网络请求。我在图层中的地图上有大约 100 个点。用户可以选择某些选项,这些选项将转到重新定义VectorTile图层和VectorTile源的功能,并删除和读取图层,以便在地图上绘制新点。

切换层几次后一切似乎都很好,但最终,tileLoadFunction停止被调用。有时它会被调用 3 次左右,然后停止被调用,即使tileGrid. 我不确定发生了什么,就像它达到某种限制或阻止它调用tileLoadFunction? 如果这是问题所在,我曾尝试使用.refresh()源代码,但这无济于事。

4

2 回答 2

1

我检查了给定图块的数据中是否有任何特征,如果没有,我跳过了tile.setFeatures()该图块的功能。这搞砸了事情的计划。

解决方案是不检查数据,如果数据没有特定图块的任何特征,则只检查setFeatures一个空。featureCollection

于 2017-06-23T20:39:00.547 回答
0

我有同样的问题,设置tile.setFeatures([]);解决了它!

于 2021-12-09T15:07:43.360 回答