1

angular-google-maps のマーカーをクリックすると、ウィンドウが表示されるように最善を尽くしています。ここで行われていることのほとんどhttp://angular-google-maps.org/demo

これは、マーカーを生成する関数です。レスト サービスから呼び出され、各マーカー オブジェクトは、coordinates.json で表示できます。

var generateMarkers = function(markers) {

angular.forEach(markers, function(marker) {

  marker.onClick = function() {
    console.log('on click - opening window');
    marker.showWindow = true;
    $scope.$apply();
  }

  marker.closeClick = function() {
    console.log('close click - hiding window');
    marker.showWindow = false;
    $scope.$apply();
  }

});

$scope.map.randomMarkers = markers;

};

これは、マーカーを宣言するコードです (コントローラーのネストはなく、1 つの $scope )。ウィンドウは、

  <google-map center="map.center" zoom="map.zoom" draggable="true" 
        bounds="map.bounds" control="map.control">


        <markers models="map.randomMarkers" coords="'self'" 
            icon="'icon'" 
            click="'onClick'">

           <windows 
                  show="'showWindow'" 
                  coords="'self'"  
                  closeClick="'closeClick'" ng-cloak="">
              <div>
                  Window with additional information
              </div>
         </windows>
        </markers> 
      </google-map>

これは angular-google-maps のバグか、私が何か間違ったことをしている (可能性が高い)

動作を示す plunkr を作成しました --> http://plnkr.co/edit/z1TdYlYbhSYWZb7n3L4M?p=preview

どう思うか教えてください。

4

1 に答える 1