Argumento ‘indexController’ no es una función, tiene undefined

Esto ha sido preguntado antes pero no respondió mi pregunta. Soy bastante nuevo en angular y estoy poniendo las cosas juntas en este momento. Estoy tratando de hacer que mi fábrica funcione dentro de mi controlador. Sin embargo sigo recibiendo el siguiente error en mi consola:

Argument 'indexController' is not a function, got undefined 

He roto los servicios y el controlador en diferentes directorios y he agregado el servicio y el controlador al archivo index.html.

Estoy usando IntelliJ y utilicé su complemento para crear el boilerplate.

    

Name:

Hello {{name}}

//this works just fine
//doesn't appear
  • {{x.name + ' is : '+x.age+' years old'}}

Controlador:

 angular.module('myApp',[]) .controller('indexController', ['$scope', 'Contact', function($scope, Contact){ var names = [ {name:'Drew' , age: 30}, {name:'Meike', age: 32}, {name:'Garry', age:64} ]; Contact.add(names); $scope.nameArray = Contact.get(); }]); 

Servicio de fábrica:

 angular.module('myApp',[]) .factory('Contact', function ContactFactory(){ var personNames = []; return{ add: function(name) { personNames.add(name); }, get: function(){ return personNames; } } }); 

No debe volver a crear el módulo angular myApp dentro de FactoryService; cuando myApp crear el módulo myApp , se eliminará el componente registrado anterior de ese módulo. Así que cuando registra FactoryService , elimina el componente de registro anterior, aquí elimina el controlador indexController . Y cuando la directiva ng-controller se evalúa, busca el controlador indexController dentro del módulo y indexController un error.

Debería ser

 angular.module('myApp') .factory('Contact', function ContactFactory(){ 

en lugar de

 angular.module('myApp',[]) .factory('Contact', function ContactFactory(){