1

Angular Google マップモジュールを使用して Google マップにポリゴンを表示しようとしていますが、モデルの visible プロパティが変更されたときに uiGmapPolygons ディレクティブが非表示/表示されません。

問題を説明するためのプランカーを次に示します: http://plnkr.co/edit/EhFihJRBK9Lb0s3mwMSl

マークアップ:

<ui-gmap-google-map center="map.center" zoom="map.zoom" draggable="true" options="options" bounds="map.bounds">
    <ui-gmap-polygons models="polygons" path="'path'" stroke="'stroke'" visible="'visible'" fill="{ color: '#2c8aa7', opacity: '0.3' }">
    </ui-gmap-polygons>
     <ui-gmap-markers models="markers" idKey="'id'" options="'options'" coords="'coords'"></ui-gmap-markers>        
</ui-gmap-google-map>

角度コード:

$scope.polygons = [{
  id: 1,
  path: [{
    latitude: 50,
    longitude: -80
  }, {
    latitude: 30,
    longitude: -120
  }, {
    latitude: 20,
    longitude: -95
  }],
  stroke: {
    color: '#6060FB',
    weight: 3
  },
  editable: true,
  draggable: true,
  geodesic: false,
  visible: true,
  fill: {
    color: '#ff0000',
    opacity: 0.8
  }
}];

$scope.toggle = function() {
  $scope.polygons[0].visible = !$scope.polygons[0].visible;
  $scope.markers[0].options.visible = !$scope.markers[0].options.visible;
};

可視プロパティを変更すると、ポリゴンが表示/非表示になると思います。

バグを見つけたのか、それともポリゴンの可視性を正しく調整しようとしているのかはわかりません。

編集:

数日前にモジュールの github リポジトリに問題を提出し、昨夜、バージョン 2.0.11 で問題を解決する応答を受け取りました。残念ながら、バージョン 2.0.12 を使用しています。

この問題に関する github ディスカッションへのリンク:

https://github.com/angular-ui/angular-google-maps/issues/1059
4

2 に答える 2

0

コントローラーで

$scope.showPolygon = false;
$scope.toggelPolygon = function(){$scope.showPolygon=!$scope.showPolygon};

あなたのui-gmap-polygonで.....

visible='showPolygon'
于 2015-11-01T04:44:27.427 に答える
0

貢献者 nmccready は 1 月にこの問題を修正しましたが、その時点で私は angular-google-maps を放棄していました。

于 2015-12-11T15:28:39.990 に答える