2016-01-06 2 views
0

Я экспериментировал с обратным геокодированием directive в угловом и я в данный момент доступно только для получения лат/LNG координаты от местоположения, но директива обратного геокодирования только даст мне ошибкуобратного геокодирования с AngularJS

Geocoder не удалось из-за: ZERO_RESULTS

Я создал простой пример Plnkr, чтобы продемонстрировать, что я пытаюсь добиться того, что вы можете просматривать here.

При использовании $scope.$apply(function(){ $scope.lat = lat; $scope.lng = lng; });

Это не имеет значения, если я использую регулярные координаты вместо как

$scope.$apply(function(){ 
     $scope.lat = 4.545; 
     $scope.lng = 12.756; 
    }); 

как это приведет только в одной и той же ошибки с обратной геокодирования. Я пробовал экспериментировать с фигурными скобками в файл index.html

<reverse-geocode lat="{{lat}}" lng="{{lng}}"></reverse-geocode>, но у меня есть сильное чувство, что нужно изменить их каким-то образом, чтобы захватить лат/LNG Coords, но не повезло до сих пор

+0

Ссылка plunkr уже в моем описании. Если вы не можете открыть его по какой-либо причине, вы можете получить к нему доступ сюда: http://plnkr.co/edit/78SRIuBCIETEuEcdNOl5 – SmalliSax

ответ

1

Ни потому что директива будет компилироваться и выполняться до завершения асинхронного $window.navigator.geolocation.getCurrentPosition, что означает, что внутри директивы будут отсутствовать как attrs.lat, так и attrs.lng.

легко раствор, чтобы предотвратить директиву от выполнения до данные доступны:

<reverse-geocode ng-if="lat && lng" lat="{{lat}}" lng="{{lng}}"></reverse-geocode> 

Демо:http://plnkr.co/edit/mJJ8OIvff1Xspnx24LfJ?p=preview

+0

У меня было ощущение, что это было легко, из-за взгляда Plnkr, который вы ему предоставили похоже, работает по назначению. Большое вам спасибо @tasseKATT! – SmalliSax

+0

Добро пожаловать :-) – tasseKATT