AngularJS - controller and factory - where am I going wrong at include/inject functions?

Viewed 114

I'm new to Angular and cannot pinpoint where I am going wrong. I'm just trying to simply inject my factory into my controller, reference said: "Cannot read property 'validar' of undefined". I have two files, ServiceUtil.js where have a service and CentroCustoCtrl.js where I'm trying to use service's function.

The function at ServiceUtil.js:

 (function () {
  'use strict';

  angular.module('Services', [])
  .service('ValidarFormulario', [function () {

      this.validar = function (form) {
          var valido = true;
         //code
          }
          return valido;
      }
  }]);

})();

And CentroCustoCtrl.js

(function () {
 'use strict';

var app = angular.module("start", ['AxelSoft', 'ngLocalize',
       'ngLocalize.Config', 'mvComponentes','Services'])
       .value('localeConf', {
               basePath: '../Scripts/Locales', ...
 ...
 });
 app.controller('CentroCustoCtrl', ['$scope', '$http', 'ValidarFormulario', function ($scope, $http, $rootScope, $timeout, ValidarFormulario) {
   $scope.Salvar = function () {
    if (ValidarFormulario.validar(document.getElementsByTagName('input'))) { ...// Cannot read property 'validar' of undefined

  );

I tried with factory , but not worked too:

angular.module('Services', [])
.factory('ValidarFormulario', [function () {

    return{
        validar : function (form) {
            var valido = true;
           //code
                }
            }
            return valido;
          }
      }
   }]);

})();

Please, I appreciate any help you can provide.

4 Answers
Related