2014-06-15 2 views
4

У меня есть модуль «карты-услуги» с услугой «MapService», как показано ниже:AngularJS: неперехваченное объект из услуг и модулей зависимостей

angular.module('maps-services', []) 
.service('MapService', [$log, function($log) { 
    this.initMap = function() { 
    } 
    this.updateMap = function() { 
    } 
}]); 

I also have a 'maps' module depending on 'maps-services' as below: 
angular.module('maps', [ 
    'maps-services' 
]); 

Когда у меня была зависимость от «карт» в другом модуле , Я получаю ошибку uncaught object с сообщением:

«[$ injector: nomod] Модуль« ngLocale »недоступен! Вы либо ошибочно написали имя модуля, либо забыли загрузить его. Если регистрация модуля гарантирует, что вы укажете Зависимости в качестве второго аргумента. http://errors.angularjs.org/1.3.0-beta.11/ $ инжектор/nomod? p0 = ngLocale "

Я не понимаю, что происходит, и как я могу отлаживать загрузку модуля, чтобы лучше понять, где проблема.

Не могли бы Вы помочь мне?

С уважением. стиль

+1

Попробуйте изменить $ log на строку '.service ('MapService', ['$ log', function ($ log) {' –

+0

Странно. Вы используете директиву 'ng-locale' в любом месте своих просмотров? – awendt

+0

Я не использую ngLocale в любом месте моего кода. – user3181983

ответ

1

80S составителей

сообщение

Это исключение напоминает мне сообщения об ошибках 80s компиляторов, используемых для броска.

В основном, когда угловые броски:

модуль 'ngLocale' не доступен!

Это значит сказать:

Один из ваших модулей не был загружен (но не ngLocale).

См. this и this для получения дополнительной информации.

Теперь почему не было ваш модуль загружен, или какой модуль он предназначен для вас. В моем случае, имея

angular.module('treeDemoApp') 

вместо этого

angular.module('treeDemoApp', []) 

было достаточно Угловая бросить это сообщение. Но у вас код явно имеет [].

Хром Ошибка?

Есть несколько предложений (1, 2), что это связано с ошибкой в ​​хроме.

Смежные вопросы