2016-12-15 4 views
0

Ich versuche, Markierungen anzuzeigen, nachdem die Karte angezeigt wird. Ich bin dazu nicht in der Lage .. unabhängig von einem Fehler. Ich habe versichert, dass der Snapshot mit den Daten und Marker Array schön erstellt wird. Gibt es irgendeinen logischen Fehler ?? bitte hilfe.Warum werden Markierungen nicht angezeigt?

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>

Antwort

0

oh! Ich heiß die Antwort mein Selbst. Es war ein einfacher Fehler. Ich habe das Marker-Array in $ scope nicht definiert. Daher haben Views nicht bekommen, was var marker ist. Ich korrigierte es

Verwandte Themen