Это приложение angulars. У меня есть служба, объявленная следующим образом:
define([], function() {
function myService(anotherService, alerts) {
//doing stuff here
this.callMe = function(msg){
myfunc(msg)
}
}
function myfunc(msg) {
alerts.Success(msg);
}
myService.$inject = ['anotherService', 'alerts'];
return myService;
});
Я запускаю службу и в какой-то момент вызываю в ней функцию:
myService.callMe("hello");
Введенные службы (в данном случае одна названные "оповещения") не определены. Если я вызываю их изнутри функции "callMe", то это работает. По какой-то причине этот сервис был построен таким образом, что функция "myfun c" была объявлена вне "myService". Я не уверен, что это было сделано таким образом. Если я перенесу его внутрь сервиса, то у меня возникнет ошибка с модулем require. Что ты предлагаешь? Есть ли способ для функции за пределами объявления службы для доступа к внедренным службам?