Я получаю следующее сообщение об ошибке пытаюсь использовать сервис геокодера для ng-map library:ReferenceError: Google не определяется с помощью нг-карта Geocoder службы
angular.js:13642 ReferenceError: google is not defined at Object.t [as geocode] (http://localhost:6240/Scripts/ng-map.min.js:25:28246)
Я инъекционная службу в мой контроллер
appModule.controller('MyController', ['$scope', 'NgMap', 'NavigatorGeolocation', 'GeoCoder',
function ($scope, NgMap, NavigatorGeolocation, GeoCoder) {
GeoCoder.geocode({address: 'Avenida Calle 26 # 40-40, Bogotá'}).then(function (result) {
//... do something with result
console.log('RESULT GEOCODER: ', result);
});
}]);
я тестировал с функцией NgMap получать ту же самую эталонную ошибку
NgMap.getGeoLocation('Avenida Calle 26 # 40-40, Bogotá').then(function (result) {
console.log('GETGEOLOCATION: ', result);
}, function (error) {
console.log('Error getting geolocation: ', error);
});
Как показано в фрагменте, я успешно использовал другие службы NgMap и NavigatorGeolocation.
Вот код моей страницы
<div map-lazy-load="https://maps.google.com/maps/api/js" map-lazy-load-params="{{ $ctrl.googleMapsUrl }}">
<div class="row">
<div class="col-md-6">
<ng-map id="map"
center="{{ $ctrl.mapCenter }}"
street-view="{{ $ctrl.svp }}"></ng-map>
</div>
<div class="col-md-6">
<ng-map id="sv" />
</div>
</div>
</div>
И в соответствующем контроллере/компонентной
$ctrl.googleMapsUrl = "https://maps.googleapis.com/maps/api/js?key=MY-API-KEY";
$ctrl.mapCenter = 'current-location';
NavigatorGeolocation.getCurrentPosition({ timeout: 10000 }).then(function (ll) {
$ctrl.svp = "StreetViewPanorama(document.querySelector('ng-map#sv'), {position:new google.maps.LatLng(" + ll.coords.latitude + " , " + ll.coords.longitude + ")})";
}, function (error) {
console.log('error getCurrentPosition: ', error);
});
Я использую AngularJS v1.5.6
Заранее спасибо за вашу помощь ,
Совершенная Вадим, он работал заключая его с обещанием GetMap , Благодаря! –