Внутри контроллера, который динамически регистрирует customFactory
, привязка имени customFactory
является просто функцией.Чтобы вызвать init()
в указанном вами месте, вам нужно вызвать customFactory
как функцию.
customFactory().init();
Однако, если у вас есть другой рецепт в другом месте (например, контроллер), которыйдолжен зависеть от customFactory
, тогда вы можете получить доступ к init()
, как и следовало ожидать.
app.controller('anotherCtrl', ['customFactory', function (customFactory) {
customFactory.init(); // OK!
}]);
Когда customFactory
регистрируется, инжектор зависимостей AngularJS знает, как создать его как одиночный, и впоследствиивы можете просто получить к нему доступ как к значению.