2017-01-26 1 views
0

Я понимаю, что я не могу использовать $ inject в заводском методе. Как вводить без использования прямой функции в заводских настройках. Вместо PopupService. $ Inject ('$ rootScope'); который бросает ошибку, что эквивалентно инъекции в угловой завод?

angular 
     .module('refdata.legalentity') 
     .factory('PopupService', PopupService); 

    PopupService.$inject('$rootScope'); 

    function PopupService($rootScope) { 

    } 

ответ

1

Установите свойство $ injection в массив зависимостей, которые вы хотите ввести.

PopupService.$inject = ['$rootScope']; 
0

Или как это без использования $inject:

var app = angular.module('refdata.legalentity'); 

app.factory("PopupService", ["$rootScope", PopupService]); 

function PopupService($rootScope) { 
    var popupText = "something to popup"; 
    return { 
     getPopupText: function(){ 
      return popupText; 
     } 
    } 
} 

Хотя я думаю, что @ ответ Энтони является тот, который вы ищете.