2013-04-16 8 views
10

ho definito il mio modulo principale, come ad esempio:dipendenze dei moduli angularjs

angular.module('domiciliations', ['domiciliations.service', 'loggerService', 'person.directives']). 
    config(['$routeProvider', function ($routeProvider) { 
    $routeProvider. 
     when('/domiciliations/mandats', { templateUrl: 'domiciliations/views/mandats.html', controller: mandatsCtrl }). 
     when('/domiciliations/mandats/:rum', { templateUrl: 'domiciliations/views/mandat.html', controller: mandatCtrl }). 
     otherwise({ redirectTo: '/domiciliations/mandats' }); 
    }]). 
    value('toastr', window.toastr). 
    value('breeze', window.breeze); 

Il mio problema è come come specificare le dipendenze dei moduli nel mio controller?

Se lo faccio:

angular.module('domiciliations.service', ['ngResource', 'breeze', 'loggerService']). 
    factory('Domiciliation', function ($resource, breeze, logger) { 
} 

allora ottengo un errore 'alcun modulo: brezza'.

Funziona se faccio:

angular.module('domiciliations.service', ['ngResource']). 
    factory('Domiciliation', function ($resource, breeze, logger) { 
} 

Così come sono io suppongo di specificare dipendenze brezza e logger?

risposta

16

breeze non è un modulo - è una value (shorthand for service) nel modulo domiciliations: value('breeze', window.breeze);.

Quando si esegue:

angular.module('domiciliations.service', ['ngResource', 'breeze', 'loggerService']). 
    factory('Domiciliation', function ($resource, breeze, logger) { 
} 

di configurare il modulodomiciliations.servicecon dipendenze ai moduli ngResource, breeze e loggerService. Angular non riesce a trovare il modulo breeze e genera un'eccezione.

Supponendo loggerService è un modulo e logger è un servizio in questo modulo, il seguente dovrebbe funzionare (breeze e logger otterrà iniettato nella funzione di fabbrica):

angular.module('domiciliations.service', ['ngResource','loggerService']). 
    factory('Domiciliation', ['$resource','breeze','logger', 
    function ($resource, breeze, logger) { 
    } 
    ]) 
+0

ah, hai ragione! Mi stavo confondendo, grazie per la spiegazione, ora è chiaro. – Sam