2017-06-16 59 views
0

我在使用openlayers 4.2.0使用ol.layer.VectorTile圖層時遇到了一個奇怪的問題。對於ol.source.VectorTile,我使用tileLoadFunction爲我的tileGrid中的切片發出網絡請求。我在地圖上有大約100個點。用戶可以選擇某些選項,該選項將轉到重新定義VectorTile圖層和VectorTile源的函數,並且圖層被刪除並重新讀取,以便在地圖上繪製新點。切換幾次後,事情似乎沒有問題,但最終,tileLoadFunction停止調用。有時它會被調用3次或者其他東西,但是然後停止調用,即使tileGrid中有更多的tile。我不確定發生了什麼事情,比如它正在達到某種限制,或者阻止它調用tileLoadFunction?我曾嘗試在源代碼中使用.refresh()以防這是問題,但這沒有任何幫助。任何想法將不勝感激。謝謝!VectorTile圖層沒有更新

回答

0

想通了。我檢查了數據中是否有任何特徵,如果沒有,我跳過該瓦片的tile.setFeatures()函數。這在事物的方案中弄亂了某些東西。解決方案是不檢查數據,如果數據沒有特定瓦片的任何特徵,只需setFeatures與一個空的featureCollection。