2017-02-13 5 views
0

나는 서비스가이 방법으로 만든이 :AngularJS와 알 수없는 서비스 제공

(function() { 
'use strict'; 
module.exports = siteAuthService; 

angular 
    .module('authSite', []) 
    .factory('siteAuthService', ['$q', '$http', 'Requester', 'tsModulesService', siteAuthService]); 


function siteAuthService($q, $http, Requester, tsModulesService) { 

    var factoryDefinitionObject = { 
     getUserByEmail: getUser, 
     createUser: createSiteUser, 
     recoverPassword: recoverPassword 
    }; 


    return factoryDefinitionObject; 

    ... 


} 
})(); 

그리고 나는이 서비스를 주입하기 위해 노력하고 컨트롤러 :

(function() { 
'use strict'; 
angular 
    .module('formOrderDialog') 
    .controller('FormOrderDialogController', FormOrderDialogController) 
    .filter('getById', getById) 
; 

FormOrderDialogController.$inject = ['tsModulesService', '$scope', '$q', '$http', '$uibModalInstance', 'params', '$filter', 'Requester', 'dateHelpers', '$translate', 'alertService', '$uibModal', 
    'SaleLineFactory', 'tsPrintSelectService', 'tsPrintService', 'EntrySectorService', 'uiGridConstants', 'confirmationDialogService', 'siteAuthService']; 

function FormOrderDialogController(tsModulesService, $scope, $q, $http, $uibModalInstance, params, $filter, Requester, dateHelpers, $translate, alertService, $uibModal, 
            SaleLineFactory, tsPrintSelectService, tsPrintService, entrySectorService, uiGridConstants, confirmationDialogService, siteAuthService) { 
     ... 
     ... 
    } 
})(); 

그리고 모듈 :

(function() { 
'use strict'; 

const module = angular 
    .module('formOrderDialog', []) 
; 

})(); 

그러나 나는 얻고있다 Error: [$injector:unpr] Unknown provider: siteAuthServiceProvider <- siteAuthService <- FormOrderDialogController

또한 formOrderDialog 모듈에서 require("../../services/siteAuthService"); 으로 시도했지만 여전히 삽입 할 수 없습니다.

답변

2

'authSite' 모듈에서 서비스가 선언되고 컨트롤러는 'formOrderDialog' 모듈에서 선언됩니다. 서비스에 액세스하려면 authSite 모듈을 주입해야합니다.

const module = angular 
    .module('formOrderDialog', ['authSite']); 
+0

더하기 1 개 문제가있는 멋지게 감지 된 – Sajeetharan

+0

, 감사합니다. – tammy