API Карт Google - события наведения курсора / отпускания мыши MarkerClusterer - PullRequest
0 голосов
/ 28 апреля 2020

Я борюсь с маркером кластерного события mouseover / mouseout. Я хочу добиться следующего эффекта. Когда я указываю своей мышью на кластер маркеров, другие кластеры маркеров удаляются (или скрываются) с карты. Далее будут нарисованы новые кластеры (в других местах). Когда я перестану наводить курсор на маркер, эти вновь созданные кластерные маркеры будут удалены с карты, а предыдущие удаленные (скрытые) маркеры будут нарисованы. В данный момент я нахожусь в этой точке:

let markerCluster = new MarkerClusterer(map, markers, {
        imagePath: 'https://cdn.rawgit.com/googlemaps/js-marker-clusterer/gh-pages/images/m',
        zoomOnClick: false,
        minimumClusterSize: 1,
        fitToMarkers: true
});

markerCluster.setIgnoreHidden(true);

google.maps.event.addListener(markerCluster, "mouseover", (cluster) => {
        markerCluster.getClusters().filter((eachCluster) => eachCluster !== cluster).forEach((eachCluster) => {
            eachCluster.getMarkers().forEach((marker) => marker.setVisible(false));
        });

        cluster.getMarkers().forEach((marker) => {
            //points to method which adds to map new markers from the given marker
        });
        markerCluster.repaint();
    });

google.maps.event.addListener(markerCluster, "mouseout", (cluster) => {
    markers.forEach((marker) => {
        marker.setVisible(true);
    });
    markerCluster.repaint();
});

Моя проблема в том, что когда я вызываю метод markerCluster.repaint(), происходит несколько событий mouseover и mouseout.

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