缩放后 NgMap 集群更改标记颜色

NgMap cluster change markers colors after zoom

我想更改标记的颜色。我正在使用 ng-map 来显示地图。我也在这个库中使用集群选项。

我的问题:我可以更改标记颜色并且我可以看到,但是一旦我开始缩放,标记颜色就会变为默认颜色(红色)。

这是我的代码:

<ng-map zoom-to-include-markers="auto" 
         id="map"
         map-type-id="ROADMAP"
         street-view-control-options="{position: 'LEFT_CENTER'}">

   <marker ng-repeat="p in paths" position="{{p.positions}}" icon="{{p.icon}}"></marker>

</ng-map>

这是集群代码:

NgMap.getMap().then(function (map) {
                for (var i = 0; i < $scope.paths.length; i++) {
                    var latLng = new google.maps.LatLng($scope.paths[i].positions[0], $scope.paths[i].positions[1]);
                    $scope.dynMarkers.push(new google.maps.Marker({position: latLng}));
                }
                $scope.markerClusterer = new MarkerClusterer(map, $scope.dynMarkers, {});
            });

我解决了问题!

如果有人遇到同样的问题,解决方案是在推送新标记时添加 icon 字段:

NgMap.getMap().then(function (map) {
                for (var i = 0; i < $scope.paths.length; i++) {
                    var latLng = new google.maps.LatLng($scope.paths[i].positions[0], $scope.paths[i].positions[1]);
                    $scope.dynMarkers.push(new google.maps.Marker({position: latLng, icon: $scope.paths[i].icon}));
                }
                $scope.markerClusterer = new MarkerClusterer(map, $scope.dynMarkers, {});
            });