#javascript #angularjs
#javascript #angularjs
Вопрос:
Кто-нибудь знает, можно ли добавить второй сервис в модуль angular?
Кажется, когда я пытаюсь, я в конечном итоге нарушаю angular.
Это работает:
var MyModule = angular.module('MyModule',[]);
MyModule.service('MyService',function(){
this.message = 'checking in';
});
MyModule.controller('MyController', function($scope,MyService){
console.log(MyService.message);
});
// output
// checking in
Это ДЕЙСТВИТЕЛЬНО работает: у меня была проблема в другом месте моего кода. Я оставляю это, потому что по-прежнему трудно найти документацию angular с применением двух сервисов (которые, я обещаю, я искал)
var MyModule = angular.module('MyModule',[]);
MyModule.service('MyService',function(){
this.message = 'checking in';
});
MyModule.service('MyServiceTwo',function(){
this.message = 'checking in';
});
MyModule.controller('MyController', function($scope,MyService,MyServiceTwo){
console.log(MyService.message);
});
// no output
Комментарии:
1. Какую версию Angular вы используете? В версии 1.2.18 это работает нормально
2. Странно … может быть, я что-то еще упускаю, и мой простой пример ДЕЙСТВИТЕЛЬНО работает…
Ответ №1:
В вашем втором определении сервиса просто извлеките модуль — не переопределяйте его:
var MyModule = angular.module('MyModule');
Комментарии:
1. Прошу прощения… Я думаю, что я не был ясен. Я не определяю это во втором примере. Это просто еще один блок кода для представления всего sha-bang. Отредактировал пример, чтобы отразить это.
2. Я не уверен. Для меня ваш код выглядит нормально. Можете ли вы опубликовать скрипку?
3. Это действительно работает… У меня возникла проблема в другом месте … спасибо за ваше время.