MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Angular Google Maps/NodeJS :afficher les marqueurs de la base de données

Voici un exemple du fonctionnement de l'affichage des marqueurs sur la carte. Quelques pointeurs :

  • Lorsque vous affichez plusieurs marqueurs, utilisez les ui-gmap-markers directive au lieu de ng-repeat la directive sur le marqueur unique.
  • De même, utilisez la version plurielle ui-gmap-windows pour afficher les fenêtres.
  • La directive markers lit les coordonnées à partir d'une clé d'objet que vous lui fournissez :<ui-gmap-markers coords="'coords'" ... > lit les coordonnées depuis le coords attribut de votre marqueur. Il en va de même pour les autres attributs, comme events , options etc.
  • Je suppose que votre LocFac.getLocations() renvoie une promesse - donc vos Markers la variable n'est très probablement pas affectée correctement. Vous feriez mieux d'assigner $scope.markers à l'intérieur du .then rappel de votre appel d'API comme suit :

    $scope.markers = []; // init markers to empty array so angular-google-maps has something to draw markers from
    LocFac.getLocations().then(function(data) {
        var markers = data.data;
        angular.forEach(markers, function(marker) {
            // Assign 'coords' attribute here for the directive to read
            marker.coords = {
                latitude: marker.latitude,
                longitude: marker.longitude
            }
        })
        $scope.markers = markers;
    }
    

Si vous avez encore besoin d'aide après cela, je serai heureux de vous en fournir :)