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