缩放后 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, {});
});
我想更改标记的颜色。我正在使用 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, {});
});