2016-03-02 46 views
1

我有一個包含五個geojson圖層(baseMaps)的傳單圖,我通過L.control控制它們。我的第三層包含許多可視化點,所以當我點擊它時,需要花費很多時間來加載。使用Leaflet加載頁面時預加載圖層

有沒有一種方法可以專門預加載此圖層,即使整個頁面需要更多時間才能加載?

由於

+1

如果您的圖層組具有數百到數千個點,則這是需要時間的DOM渲染過程。您可能對集羣或畫布插件感興趣,以避免這種情況。 – ghybs

+0

感謝您的回答,我有4層只有chrolopleth地圖,只有一個8000點。我忘了提及,但我的觀點已經集羣化。 – JulienJ

+0

你如何管理擁擠的圖層加載?請分享一些代碼(紅利點:在線重現您的問題,例如使用JSFiddle,JSBin,Plunker ...),以便我們可以幫助您。 – ghybs

回答

0

Leaflet.markercluster只計算一次它被添加到地圖聚類(它需要知道爲了處理該聚類地圖配置)。

正如在問題評論中所說的,第一步是使用該插件的最新版本,因爲與0.4.0版本相比,它受益於主要的性能升級。

如果您仍然希望插件提前處理羣集,以便用戶不必等待第一次點擊圖層控件時,解決方法是將您的羣集圖層添加到地圖上立即將其刪除:這樣,集羣將在初始化時處理,並且一旦用戶想要查看該圖層,該圖層即可顯示。