2016-12-15 22 views
0

マップが表示された後にマーカーを表示しようとしています。私はそうすることができません。何らかのエラーに関係なく。私は、スナップショットがデータとマーカ配列がうまく作成されていることを確信しています。論理的なエラーはありますか?助けてください。マーカーが表示されないのはなぜですか?

var apps = angular.module('appa',['firebase','uiGmapgoogle-maps']); 
 
apps.controller('mainCtrl', function($firebaseObject,$scope){ 
 

 
       var ref = firebase.database().ref(); 
 
       var marker = []; 
 
       ref.once("value") 
 
       .then(function(snapshot) 
 
       { 
 
       snapshot.forEach(function(child) 
 
       { 
 
        var mark = { 
 
        id: child.child("Id").val(), 
 
        coords: { 
 
        latitude: child.child("Lat").val(), 
 
        longitude: child.child("Long").val() 
 
        }, 
 
        options: { title: child.child("Alt").val() } 
 
        }; 
 
    marker.push(mark); 
 
       }); 
 
}); 
 

 
       $scope.map = { 
 
       center: 
 
       { 
 
        latitude: 67, 
 
        longitude: 24 
 
         }, 
 
       zoom: 3 
 
         }; 
 
    });
<body ng-app="apps"> 
 
    <div id="map_canvas" ng-controller="mainCtrl"> 
 
    <ui-gmap-google-map center="map.center" zoom="map.zoom"> 
 

 
     <ui-gmap-marker ng-repeat="m in marker" coords="m.coords" options="m.options" idkey="m.id"> 
 
      </ui-gmap-marker> 
 
        </ui-gmap-google-map> 
 
</div> 
 
<!--example--> 
 
</body>

答えて

0

ああ!私は自分の答えを熱くする。それは簡単な間違いでした。私は$ scopeにマーカー配列を定義しなかった。したがって、ビューはvarマーカーが何かを取得していませんでした。私はそれを修正しました

関連する問題