Leaflet MarkerCluster removeOutsideVisibleBounds не работает - PullRequest
0 голосов
/ 18 мая 2018

У меня есть карта Leaflet, в которой используется плагин Leaflet.markercluster .

Кластеры правильно отображаются на карте, но я замечаю, что кластеры, которые находятся за пределами представления, по-прежнему отображаютсяхотя для параметра removeOutsideVisibleBounds установлено значение true.

. Я могу сказать, что, если панорамировать карту, нажимая и удерживая кнопку мыши, все кластеры все еще видны при панорамировании..

Ниже приведена конфигурация для группы кластеров:

let myCluster = L.markerClusterGroup({ spiderfyOnMaxZoom: false, removeOutsideVisibleBounds: true });

Что еще мне не хватает, чтобы убедиться, что кластеры, находящиеся за пределами представления, удалены?

Проект на Angular 5 с использованием ngx-листовки.

1 Ответ

0 голосов
/ 19 мая 2018

Вы, вероятно, только что пропустили эту часть описания опции removeOutsideVisibleBounds (выделено мной):

removeOutsideVisibleBounds: кластеры и маркеры слишком далеко из области просмотра удалены изсопоставление производительности.

Что означает это "слишком далеко", так это то, что он все еще хранит маркеры и кластеры в пределах "буферной" области размером 1 область просмотра в каждом направлении;за исключением мобильного телефона, где буферная область равна 0, чтобы быть легче в памяти устройства.

Поэтому в настольных браузерах вы должны панорамировать карту более чем на 1 размер области просмотра карты, прежде чем увидите отсутствующие маркеры икластеры, которые появляются снова только когда вы прекращаете панорамирование (отпускаете мышь).

Если вы проверяете исходный код :

Получает карты видимые границыувеличивается в каждом направлении на размер экрана (поэтому пользователь не может видеть область, которую мы не покрываем в одной области)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...