Jump to content


Photo

RangeError: Maximum call stack size exceeded en Javascript


  • Please log in to reply
No replies to this topic

#1 ing.haroldodiaz

ing.haroldodiaz

    Newbie

  • Miembros
  • Pip
  • 1 posts

Posted 22 July 2013 - 02:54 PM

Hola a todos mis amigos Developers,

Estoy desarrollando una App con AngularJS y Bootstrap y Algunas cosas con jQuery, pero tengo un problema que no he podido solucionar, estoy realizando un Upload de Archivos, y al momento de realizar en envio, me sale el siguiente error:

RangeError: Maximum call stack size exceeded


El código que estoy usando para ello es el siguiente:

[js]
myApp.controller('RoutingFileUploadCtrl', function ($scope, $rootScope, routingTemplatesData, logger) {
   
  $scope.uploadModel = {
    georeferencingType: 0, // coordinates
    routeAnalysisType: 0, // sequenceAndSchedule
    diameterRequired: false,
    finalDate: undefined,
    initialDate: undefined,
    finalDateType: 1,
    monday: false,
    tuesday: false,
    wednesday: false,
    thursday: false,
    friday: false,
    saturday: false,
    sunday: false
  };

  $scope.upload = function () {
    $scope.uploadProcessing = true;
    $scope.uploadModel.file.formData = $scope.uploadModel;
    $scope.uploadModel.file.submit($scope.uploadModel);
    initialize();
  };

  $rootScope.$on('fileSelected', function (e, args) {
    $scope.$apply(function() {
      $scope.uploadModel.file = args.file;
      $scope.uploadModel.fileName = args.file.files[0].name;
    });
  });

  $rootScope.$on('uploadProgressUpdated', function (e, args) {
    $scope.$apply(function() {
      $scope.uploadModel.progress = args.progress;
    });
  });

  $rootScope.$on('uploadCompleted', function (e, data) {
    $scope.$apply(function () {
      $scope.dataResult = data;
      $scope.uploadProcessing = false;
    });
    if (data.recordProblem && data.recordProblem > 0) {
      logger.info("Hay errores en las rutas que está intentando cargar"); 
    } else {
      logger.info("Las rutas cargadas se procesaron satisfactoriamente");
    }   
  });

  var initialize = function () {
    $scope.uploadModel.file = {};
    $scope.uploadModel.fileName = undefined;
    $scope.uploadModel.progress = 0;
  };

  $scope.uploadModel.periodicity = 0;
  $scope.uploadModel.finalDateType = 1;

  $scope.canShowRepeatedlySection = function () {
    return $scope.uploadModel.periodicity == 1;
  };

  $scope.canShowFinalDate = function() {
    return $scope.uploadModel.finalDateType == 0;
  };

  $scope.$watch('uploadModel.periodicity', function (newValue) {
    if(newValue == 0) {
      $scope.uploadModel.finalDate = undefined;
      $scope.uploadModel.finalDateType = 1;
      $scope.uploadModel.monday = false;
      $scope.uploadModel.tuesday = false;
      $scope.uploadModel.wednesday = false;
      $scope.uploadModel.thursday = false;
      $scope.uploadModel.friday = false;
      $scope.uploadModel.saturday = false;
      $scope.uploadModel.sunday = false;
    }
  });

  initialize();
});
[/js]

Les agradeceria me puedan orientar, les estaria muy agradecido...

Dato adicional: Estoy usando Google Chrome como browser...
  • 0




IP.Board spam blocked by CleanTalk.