UI-GMAP-标志和图标changeble所有标记(ui-gmap-markers and ico

2019-11-03 22:01发布

我试图改变图标使用的UI - 谷歌 - 地图库角地图上的每一个标记。 $scope.map.options.icon工作,但对于所有标记初始化图标。

对于API我有图标标签,但没有工作或其他地方我错过什么。

<ui-gmap-markers 
    idKey="map.dynamicMarkers.id" models="map.dynamicMarkers" 
    coords="'self'" onMarkerClicked="'onMarkerClicked'"
    fit="'true'" doCluster="'true'" clusterEvents="clusterEvents"
    options="map.options" icon="'icon'">
</ui-gmap-markers>

并在dynamicMarkers标记的数据库填充列表获取数据后,对象列表

  dynamicMarkers = $scope.allTrees;
  $scope.map.options.icon = "http://maps.gstatic.com/mapfiles/ridefinder-images/mm_20_green.png";

  _.each(dynamicMarkers, function (marker) {
      if (marker.status == 0) {
        marker.icon = "http://maps.gstatic.com/mapfiles/ridefinder-images/mm_20_red.png";
      } else if (marker.status == 1) {
        marker.icon = "http://maps.gstatic.com/mapfiles/ridefinder-images/mm_20_green.png";
      } else if (marker.status == 2) {
        marker.icon = "http://maps.gstatic.com/mapfiles/ridefinder-images/mm_20_yellow.png";
      }
  });

  $scope.map.dynamicMarkers = dynamicMarkers;

出于某种原因,图标不会改变。 谢谢。

Answer 1:

我找到了解决方案! 首先只需要设置图标的网址marker.icon的地方,而不是设置默认图标 map.options.icon 。 如果你设置的默认图标map.options并尝试设置这是行不通的标记里面的图标了!

这里是工作示例:

<ui-gmap-markers 
    idKey="map.dynamicMarkers.id" models="map.dynamicMarkers" 
    coords="'self'" onMarkerClicked="'onMarkerClicked'"
    fit="'true'" doCluster="'true'" clusterEvents="clusterEvents"
    options="map.options" icon="'icon'">
</ui-gmap-markers>

角代码

dynamicMarkers = $scope.allTrees;
// not set default icon for the mark
// $scope.map.options.icon = "http://maps.gstatic.com/mapfiles/ridefinder-images/mm_20_green.png";

  _.each(dynamicMarkers, function (marker) {
      if (marker.status == 0) {
        marker.icon = "http://maps.gstatic.com/mapfiles/ridefinder-images/mm_20_red.png";
      } else if (marker.status == 1) {
        marker.icon = "http://maps.gstatic.com/mapfiles/ridefinder-images/mm_20_green.png";
      } else if (marker.status == 2) {
        marker.icon = "http://maps.gstatic.com/mapfiles/ridefinder-images/mm_20_yellow.png";
      }
  });

$scope.map.dynamicMarkers = dynamicMarkers;

这是一个捕捉和作品。 我希望他们修复角谷歌 - 地图库的下一个版本的bug。 我尝试用角谷歌 - 地图2.1.5。 CHEARS。



文章来源: ui-gmap-markers and icon changeble for all mark