Sto cercando di ottenere la latitudine e la longitudine della mia posizione usando AngularJS e Geolocation. Questa è la funzione nel controller in cui sto assegnando i valori della latitudine e della longitudine e li stampo sulla console del browser. La funzione NearMe() viene chiamato,Ottenere coordinate di geolocalizzazione usando AngularJS
var mysrclat= 0; var mysrclong = 0;
$scope.nearme = function($scope) {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function (position) {
mysrclat = position.coords.latitude;
mysrclong = position.coords.longitude;
});
console.log(mysrclat);
console.log(mysrclong);
}
}
Il problema è che, per la prima volta, le coordinate vengono stampati come 0, 0. Poi, dopo che la stampa i valori corretti delle coordinate. Perché stampa 0, 0 come le coordinate la prima volta?
Thanks .. Cosa devo fare se ho bisogno di utilizzare i valori di mysrclat e mysrclong al di là del confini di callback? come nel mio caso, ho bisogno di usare quei valori in un'altra funzione..ho provato a assegnarlo alla variabile $ scope e usarlo nell'altra funzione non funziona bene..anche idee? – user2297790
Dovresti associarli all'ambito o implementarlo come servizio, è molto meglio. È possibile utilizzare https://github.com/arunisrael/angularjs-geolocation, credo sia molto adatto per il proprio compito o codice di revisione del servizio. È molto semplice e usalo per le tue focene. –