entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

Error: $injector:modulerr en AngularJS

Hola amigos desarrolladores.

En mi ruta para el aprendizaje de AngularJs, me he conseguido con otro problemita que me ha sido bastante duro de superar, en esta ocasión es el famoso $injector:modulerr. Este error se origina, cuando la dependencia hacia un módulo no se ha realizado de manera correcta, o algo a fallado en ella.

Para colocarlos en contexto, tengo una factoría, que provee de una funcionalidad (aún no desarrollada), que será consumida por un controlador, hace poco realice una pregunta muy parecida a esta, pero ahora no se en donde me está originando dicho error $injector:modulerr.

login.factory.js

// Login Factory - LoginFactory
(function(){
    'use strict';
    angular
        .module('app.loginFactory',[])
        .factory('LoginFactory',ObtenerLogin);

    function ObtenerLogin(){
        var servicios = {
            verificarAcceso : verificarAcceso
        };

        return servicios;

        function verificarAcceso(usuario){
            return console.log(usuario);
        }
    }
})

login.controller.js

// Login Controller - LoginController
(function(){
    'use strict';
    angular
        .module('app.login',['app.loginFactory'])
        .controller('LoginController',Login);
    Login.$injector = ['LoginFactory']

    function Login(LoginFactory){
        var vm = this;

        vm.comprobarAcceso = comprobarAcceso;

        function comprobarAcceso(usuario){
            LoginFactory.verificarAcceso(usuario);
        }
    }
})()

El error que me presenta el navegador es este:
Uncaught Error: [$injector:modulerr]

De antemano muchisimas gracias...
Saludos desde Venezuela...

1 Respuesta

0voto

Villanuevand Puntos5730

Pues, he encontrado la respuesta al problema que me estaba ocurriendo... Y ha sido bastante simple!
Un descuido de mi parte, en la realización el la función autoejecutable que engloba el ámbito de la factoría, acá los archivos...
login.factory.js - Original.

// Login Factory - LoginFactory
(function(){
    'use strict';
    angular
        .module('app.loginFactory',[])
        .factory('LoginFactory',ObtenerLogin);

    function ObtenerLogin(){
        var servicios = {
            verificarAcceso : verificarAcceso
        };

        return servicios;

        function verificarAcceso(usuario){
            return console.log(usuario + 'mostrado desde factory');
        }
    }
}) // <= falta la invocación de la función ()

login.factory.js - Modificado

// Login Factory - LoginFactory
(function(){
    'use strict';
    angular
        .module('app.loginFactory',[])
        .factory('LoginFactory',ObtenerLogin);

    function ObtenerLogin(){
        var servicios = {
            verificarAcceso : verificarAcceso
        };

        return servicios;

        function verificarAcceso(usuario){
            return console.log(usuario + 'mostrado desde factory');
        }
    }
})() // <= la invocación ya se está realizando

En verdad ha sido bastante tonto de mí parte, pero bueno.. Tonterías como estás nos hacen centrarnos más en los detalles y por ende nos aumenta la experiencia lo que nos transforma en mejores desarrolladores.

Saludos....

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta